Fakultas Ilmu Komputer UI
Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
PMPL
Collection of Practice
2019
1606835595-practice
Commits
4b9b3dc6
Commit
4b9b3dc6
authored
Sep 23, 2019
by
Kevin Albert Simanjuntak
Browse files
initial commit
parent
896c4e4f
Pipeline
#20364
passed with stage
in 44 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
functional_tests.py
View file @
4b9b3dc6
from
selenium
import
webdriver
from
selenium.webdriver.common.keys
import
Keys
import
time
import
unittest
class
NewVisitorTest
(
unittest
.
TestCase
):
class
NewVisitorTest
(
unittest
.
TestCase
):
def
setUp
(
self
):
def
setUp
(
self
):
self
.
browser
=
webdriver
.
Firefox
()
def
tearDown
(
self
):
def
tearDown
(
self
):
self
.
browser
.
quit
()
def
test_can_start_a_list_and_retrieve_it_later
(
self
):
def
test_can_start_a_list_and_retrieve_it_later
(
self
):
# Edith has heard about a cool new online to-do app. She goes
# to check out its homepage
self
.
browser
.
get
(
'http://localhost:8000
/homepage
'
)
self
.
browser
.
get
(
'http://localhost:8000'
)
# She notices the page title and header mention to-do lists
body_text
=
self
.
browser
.
find_element_by_tag_name
(
'body'
).
text
self
.
assertIn
(
'Tutorial PMPL'
,
self
.
browser
.
title
)
self
.
assertIn
(
'Kevin Albert Simanjuntak'
,
body_text
)
self
.
assertIn
(
'NPM'
,
body_text
)
self
.
assertIn
(
'To-Do'
,
self
.
browser
.
title
)
header_text
=
self
.
browser
.
find_element_by_tag_name
(
'h1'
).
text
self
.
assertIn
(
'To-Do'
,
header_text
)
# She is invited to enter a to-do item straight away
if
__name__
==
'__main__'
:
unittest
.
main
(
warnings
=
'ignore'
)
\ No newline at end of file
inputbox
=
self
.
browser
.
find_element_by_id
(
'id_new_item'
)
self
.
assertEqual
(
inputbox
.
get_attribute
(
'placeholder'
),
'Enter a to-do item'
)
# She types "Buy peacock feathers" into a text box (Edith's hobby
# is tying fly-fishing lures)
inputbox
.
send_keys
(
'Buy peacock feathers'
)
# When she hits enter, the page updates, and now the page lists
# "1: Buy peacock feathers" as an item in a to-do list table
inputbox
.
send_keys
(
Keys
.
ENTER
)
time
.
sleep
(
1
)
table
=
self
.
browser
.
find_element_by_id
(
'id_list_table'
)
rows
=
table
.
find_elements_by_tag_name
(
'tr'
)
self
.
assertTrue
(
any
(
row
.
text
==
'1: Buy peacock feathers'
for
row
in
rows
)
)
# There is still a text box inviting her to add another item. She
# enters "Use peacock feathers to make a fly" (Edith is very
# methodical)
self
.
fail
(
'Finish the test!'
)
# The page updates again, and now shows both items on her list
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment