def test_lock(self):
driver = self.driver
driver.get("http://www.baidu.com")
self.assertIn(u"????", driver.title)
elem = driver.find_element_by_id("kw")
elem.send_keys("lock")
elem.send_keys(Keys.RETURN)
i = 0
while 1:
if i>=2:
break
time.sleep(1)
i+=1
print "not test %s , wait %s second continue ..." % ('lock',i,)
python类RETURN的实例源码
def test_search(self):
driver = self.driver
driver.get("http://www.baidu.com")
self.assertIn(u"????", driver.title)
elem = driver.find_element_by_id("kw")
elem.send_keys("php")
elem.send_keys(Keys.RETURN)
i = 0
while 1:
if i>=2:
break
time.sleep(1)
i+=1
print "not test %s , wait %s second continue ..." % ('php',i,)
assert "No results found." not in driver.page_source
def enter(self,element):
'''
Keyboard: hit return
Usage:
self.enter(element)
'''
element.send_keys(Keys.RETURN)
def login(user, password, delay):
try:
print 'Trying with password: ' + password
elem = driver.find_element_by_name("username")
elem.clear()
elem.send_keys(user)
elem = driver.find_element_by_name("password")
elem.clear()
elem.send_keys(password)
elem.send_keys(Keys.RETURN)
sleep(delay)
assert (("Login") in driver.title)
#assert (("Your username or password was incorrect" or "son incorrectos.") not in driver.page_source)
#if driver.current_url == 'https://www.instagram.com/':
# print 'Password correct!'
# print '%s' %password
#else:
# print 'Wrong password'
except AssertionError:
print 'Access granted mother kaker!!'
print 'The password is: ' + password
try:
f = open('pwnedAccounts.txt','a')
except:
f = open('pwnedAccounts.txt','w')
f.write('username:'+user+'\npassword:'+password+'\n')
f.close()
driver.delete_all_cookies()
return 1
except:
print "\r Check your connection to the internet mother kaker\r"
def test_search(self, search_page):
assert search_page.results is None
search_page.searchbox = 'nsa.z < 0.1'
search_page.searchbox = Keys.RETURN
assert search_page.results is not None
assert search_page.table is not None
def import_members(self, emails):
print('Attempting to import email addresses')
input_xpath = "//input[@placeholder='Enter name or email address...']"
add_members_field = self.browser.find_element_by_xpath(input_xpath)
for email in emails:
for c in email:
add_members_field.send_keys(self._get_base_character(c))
add_members_field.send_keys(Keys.RETURN)
time.sleep(random.randint(1,self.delay))
def lms_login(parent, user, password):
user_field = parent.find_element_by_css_selector('input[name=user_id]')
user_field.send_keys(user)
pass_field = parent.find_element_by_css_selector('input[name=password]')
pass_field.send_keys(password)
pass_field.send_keys(Keys.RETURN)
def test_main(driver, user_domain):
user = driver.find_element_by_id("user")
user.send_keys(DEVICE_USER)
password = driver.find_element_by_id("password")
password.send_keys(DEVICE_PASSWORD)
driver.get_screenshot_as_file(join(screenshot_dir, 'login.png'))
# print(driver.page_source.encode('utf-8'))
password.send_keys(Keys.RETURN)
driver.get_screenshot_as_file(join(screenshot_dir, 'login_progress.png'))
#time.sleep(30)
#driver.get_screenshot_as_file(join(screenshot_dir, 'login_progress_2.png'))
# try:
# password.submit()
# except WebDriverException, e:
# if 'submit is not a function' in e.msg:
# print("https://github.com/SeleniumHQ/selenium/issues/3483")
# print(e)
# pass
# else:
# raise e
# time.sleep(5)
#
wait_driver = WebDriverWait(driver, 120)
#wait_driver.until(EC.text_to_be_present_in_element((By.CSS_SELECTOR, '#header #expandDisplayName'), DEVICE_USER))
wait_driver.until(EC.element_to_be_clickable((By.ID, 'closeWizard')))
wizard_close_button = driver.find_element_by_id("closeWizard")
wizard_close_button.click()
time.sleep(2)
driver.get_screenshot_as_file(join(screenshot_dir, 'main.png'))
def login(self):
self.driver = webdriver.Chrome(self.driverPath)
self.wait = WebDriverWait(self.driver, self.waitSeconds)
self.driver.get(self.loginUrl)
phone = self.wait.until(EC.element_to_be_clickable((By.XPATH, "//*[@id='login_field']")))
passwd = self.wait.until(EC.element_to_be_clickable((By.XPATH, "//*[@id='password']")))
loginbtn = self.wait.until(EC.element_to_be_clickable((By.XPATH, "//*[@id='login']/form/div[4]/input[3]")))
phone.send_keys(Settings.USER_NAME)
passwd.send_keys(Settings.PASSWD)
loginbtn.send_keys(Keys.RETURN)
def login(driver):
driver.get(LOGIN_URL)
driver.find_element_by_id('auth_user_email').send_keys(LOGIN_EMAIL)
driver.find_element_by_id('auth_user_password').send_keys(
LOGIN_PASSWORD + Keys.RETURN)
pg_loaded = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "results")))
assert 'login' not in driver.current_url
def test_login(self):
driver = self.driver
usr = "rollNumberPleaseReplace"
pwd = "PASSWORD"
driver = webdriver.Chrome("D:\chromedriver\chromedriver")
# or you can use Chrome(executable_path="/usr/bin/chromedriver")
driver.get("http://punjab.chitkara.edu.in//Interface/index.php")
assert "Chalkpad" in driver.title
elem = driver.find_element_by_id("username")
elem.send_keys(usr)
elem = driver.find_element_by_id("password")
elem.send_keys(pwd)
elem.send_keys(Keys.RETURN)
self.assertTrue(driver.find_element_by_link_text("Logout"),"Logout link")
def enter(self, element):
"""
Keyboard: hit return
Usage:
self.enter(element)
"""
element.send_keys(Keys.RETURN)
def authenticate(self):
username_login = self.wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR,
'body > div.login-wrap > div > div > div > div > div.login-tabWrap.clearBoth > div:nth-child(2) > a')))
username_login.click()
username = self.wait.until(
EC.presence_of_element_located(
(By.CSS_SELECTOR, '#userNameLogin'))
)
password = self.wait.until(EC.presence_of_element_located(
(By.CSS_SELECTOR, '#pwd')))
username.clear()
username.send_keys(auth.LU_USER)
password.clear()
password.send_keys(auth.LU_PASS)
password.send_keys(Keys.RETURN)
def test_teacher_select_when_to_show_feedback_to_a_student_8054(self):
"""Select when to show feedback to a student.
Steps:
From the dashboard, click on the 'Add assignment' drop down menu
Click on the 'Add Homework' button
Select an option on the 'Show feedback' drop down menu
Expected Result:
The option chosen is shown on the drop down menu.
"""
self.ps.test_updates['name'] = 't1.16.027' \
+ inspect.currentframe().f_code.co_name[4:]
self.ps.test_updates['tags'] = ['t1', 't1.16', 't1.16.027', '8054']
self.ps.test_updates['passed'] = False
# Test steps and verification assertions
Assignment().open_assignment_menu(self.teacher.driver)
self.teacher.driver.find_element(By.LINK_TEXT, 'Add Homework').click()
assert('homework/new' in self.teacher.current_url()), \
'Not on the add a homework page'
self.teacher.wait.until(
expect.presence_of_element_located(
(By.ID, "feedback-select")
)
).send_keys("instantly" + Keys.RETURN)
self.ps.test_updates['passed'] = True
# Case C8055 - 028 - Teacher | Change when to show feedback for draft hw
def test_content_reviewer_log_into_exercises_96962(self):
"""Log into Exercises.
Steps:
Go to https://exercises-qa.openstax.org/
Click "SIGN IN"
Enter the Content username into "Email or username" text box
Click "Next"
Enter the Content password into "password" text box
Click "Login"
Expected Result:
User is logged in
"""
self.ps.test_updates['name'] = 't1.36.012' \
+ inspect.currentframe().f_code.co_name[4:]
self.ps.test_updates['tags'] = ['t1', 't1.36', 't1.36.012', '96962']
self.ps.test_updates['passed'] = False
# Test steps and verification assertions
self.content.driver.get("https://exercises-qa.openstax.org/")
self.content.sleep(3)
self.content.find(By.LINK_TEXT, "SIGN IN").click()
self.content.find(By.XPATH, "//input[@id='login_username_or_email']") \
.send_keys(os.getenv('CONTENT_USER'))
self.content.find(By.XPATH, "//input[@id='login_username_or_email']") \
.send_keys(Keys.RETURN)
self.content.sleep(2)
self.content.find(By.XPATH, "//input[@id='login_password']") \
.send_keys(os.getenv('CONTENT_PASSWORD'))
self.content.find(By.XPATH, "//input[@id='login_password']") \
.send_keys(Keys.RETURN)
self.content.sleep(3)
self.content.find(By.LINK_TEXT, "SIGN OUT")
self.ps.test_updates['passed'] = True
# Case C96963 - 013 - Content Reviewer | Access Reviewer Display
def happy_birthdays(self):
self.browser.get('https://www.facebook.com/events/birthdays')
div = self.browser.find_element(By.ID,"events_birthday_view")
text_areas = div.find_elements(By.CSS_SELECTOR,"textarea.enter_submit.uiTextareaNoResize.uiTextareaAutogrow.uiStreamInlineTextarea.inlineReplyTextArea.mentionsTextarea.textInput")
for textarea in text_areas:
textarea.send_keys("HAPPY BIRTHDAY!!" + Keys.RETURN)
def connect(self):
domain = self.config.get('login', 'domain')
auth_type = self.config.get('login', 'auth_type')
institution = self.config.get('login', 'institution')
username = self.config.get('login', 'username')
password = self.config.get('login', 'password')
self.driver = self.get_driver()
self.driver.set_window_size(self.config.get('window', 'width'),
self.config.get('window', 'height'))
self.wait = self.waiter()
print('Opening instance {}:{}'.format(self.instance, institution))
self.get('/mng/login?institute={}&auth={}'.format(institution, auth_type))
if auth_type == 'SAML' and domain != '':
print('Logging in as {}@{}'.format(username, domain))
element = self.wait.until(EC.visibility_of_element_located((By.ID, 'org')))
select = Select(element)
select.select_by_value(domain)
element = self.driver.find_element_by_id('submit')
element.click()
# We cannot use submit() because of
# http://stackoverflow.com/questions/833032/submit-is-not-a-function-error-in-javascript
else:
print('Logging in as {}'.format(username))
self.send_keys(By.ID, 'username', username)
element = self.send_keys(By.ID, 'password', password)
element.send_keys(Keys.RETURN)
try:
# Look for some known element on the Alma main screen
self.wait_for(By.CSS_SELECTOR, '.logoAlma', 30)
except NoSuchElementException:
raise Exception('Failed to login to Alma')
print("login DONE")
def scroll_into_view_and_click(self, value, by=By.ID):
element = self.table.browser.driver.find_element(by, value)
self.table.browser.driver.execute_script('arguments[0].scrollIntoView();', element);
# Need to scroll a little bit more because of the fixed header
self.table.browser.driver.execute_script('window.scroll(window.scrollX, window.scrollY-400)')
element = self.wait.until(EC.element_to_be_clickable((by, value)))
try:
element.click()
except:
element.send_keys(Keys.RETURN) # works in some edge cases
def select2Select(self, id, value):
"""Select a value in a select2 menu. The select element *must* have an
id attribute in order for this work. Select2 uses the select element id
to create its container for selections.
"""
selector = '#select2-' + id + '-container + .select2-selection__arrow'
self.waitForClickable((By.CSS_SELECTOR, selector))
self.find(By.CSS_SELECTOR, selector).click()
field = self.waitForPresence((By.CLASS_NAME, 'select2-search__field'))
field.send_keys(value)
field.send_keys(Keys.RETURN)