def do_login(matricula, senha): util.login(matricula, senha) if util.is_authenticated(): return make_response(json.dumps(True)) else: return make_response(json.dumps(False))
def test_create(self): """ Test if app creates new todo item """ todo1 = create(self, 'Write app tests') assert todo1['title'] == 'Write app tests' assert todo1['order'] == 1 assert not todo1['completed'] assert todo1['user'] == 'tsheasha' todo2 = create(self, 'Write automation tests', completed=True) assert todo2['title'] == 'Write automation tests' assert todo2['order'] == 2 assert todo2['completed'] assert todo2['user'] == 'tsheasha' logout(self) login(self, "nahla", "password") todo3 = create(self, 'Write automation tests', completed=True) assert todo3['title'] == 'Write automation tests' assert todo3['order'] == 3 assert todo3['completed'] assert todo3['user'] == 'nahla'
def testValidAccount(self): # Submit original form data self._submit_and_check(self.form_data, 'you may now login') # Make sure we can log in util.login(self.driver, self.form_data['username'], self.form_data['password']) self.assertTrue('dashboard' in self.driver.current_url)
def test_no_email(self): # Login with incorrect password util.login(self.driver, '', 'badpassword') # Check for alert alerts = util.get_alert_boxes(self.driver, 'Email address is required') self.assertEqual(len(alerts), 1)
def test_no_password(self): # Login with incorrect password util.login(self.driver, self.user_data['username'], '') # Check for alert alerts = util.get_alert_boxes(self.driver, 'Password is required') self.assertEqual(len(alerts), 1)
def test_not_registered_email(self): # Login with incorrect password util.login(self.driver, '*****@*****.**', self.user_data['password']) # Check for alert alerts = util.get_alert_boxes(self.driver, 'log-in failed') self.assertEqual(len(alerts), 1)
def test_incorrect_password(self): # Login with incorrect password util.login(self.driver, self.user_data['username'], 'wrongpass') # Check for alert alerts = util.get_alert_boxes(self.driver, 'log-in failed') self.assertEqual(len(alerts), 1)
def test_login(self): # Login util.login(self.driver, self.user_data['username'], self.user_data['password']) # Assert that browser is pointing to /dashboard self.assertTrue('/dashboard' in self.driver.current_url)
def tearDown(self): # Need to login again to delete project util.login(self.driver, self.user_data['username'], self.user_data['password']) # Call parent tearDown super(UITests, self).tearDown()
def main(auto_test=False): """ 接口测试启动函数 :param auto_test: :return: """ # 接口测试配置文件 config_path = os.path.join(os.getcwd(), "config.yml") config_file = open(config_path) config_yml = yaml.load(config_file) config_file.close() # 获得基本配置信息 base_config = config_yml["base"] # 获得邮件信息 email_config = config_yml["email"] # 从本地获得用例信息 case_list = LocalCase().get_case_list() # 统计 failure_count = 0 skip_count = 0 success_count = 0 username = base_config.get("username", "") if not username: sys.exit(-1) # 登录,登录失败将不继续测试 access_token = login(base_config) access_token_list[username] = access_token if not access_token: # session 为None说明登录失败,用例不继续 sys.exit(-1) local_report_obj = LocalReport() # 循环所有测试用例,判断是需要进行测试 for case_info in case_list: # python main.py [option] 若存在option,则为自动化测试,不存在debug模式 if not auto_test: if not case_info.get("case_debug", "false") == "true": skip_count += 1 continue # 获得测试用例中的用户信息(支持多用户测试) case_user = case_info.get("case_user", "") if not case_user: continue base_config['username'] = case_user # 测试用例对应的用户密码 base_config['password'] = test_user[case_user] # 登录成功,获得用户的token access_token_list[case_user] = login(base_config) # 测试用例信息给测试请求对象,base_config中包含全局参数,用户请求参数加密,可根据实际情况决定是否需要 case = CaseRequest(case_info, base_config) case.run(access_token_list[case_user]) local_report_obj.gen_case_line(case) if case.result == "success": success_count += 1 elif case.result == "failed": failure_count += 1
def setUp(self): # Call parent setUpClass super(UserSmokeTest, self).setUp() # Create user account and login self.user_data = util.create_user(self.driver) util.login(self.driver, self.user_data['username'], self.user_data['password'])
def create_fatura_verde(): driver = webdriver.Chrome(config.get("other", "chromedriver_path")) logging.info("Entering page.") driver.get(config.get("portal_financas", "url_emitir_facturas")) login(driver, config) logging.info("Filling form.") # Date today = datetime.today() invoice_day = config.get('portal_financas', 'invoice_day') invoice_date = datetime(today.year, today.month, int(invoice_day)) invoice_date_str = invoice_date.strftime("%Y-%m-%d") invoice_date_field = driver.find_element_by_xpath("//input[@name='dataPrestacao']") invoice_date_field.send_keys(invoice_date_str) # Type of invoice driver.find_element_by_xpath("//option[@label='Fatura']").click() # Info about company company_country = config.get('company', "company_country").upper() driver.find_element_by_xpath(f"//option[contains(@label, '{company_country}')]").click() company_code_field = driver.find_element_by_xpath("//input[@name='nifEstrangeiro']") company_code_field.send_keys(config.get("company", "company_code")) company_name_field = driver.find_element_by_xpath("//input[@name='nomeAdquirente']") company_name_field.send_keys(config.get("company", "company_name")) # Final info last_month_date = minus_one_month(invoice_date) description = (f'Monthy fee {last_month_date.strftime("%Y-%m-%d")} - {invoice_date.strftime("%Y-%m-%d")}\n' 'Bank account information:\n' f'IBAN: {config.get("bank_account_info", "iban")}\n' f'SWIFT/BIC: {config.get("bank_account_info", "swift")}') description_field = driver.find_element_by_xpath("//textarea[@name='servicoPrestado']") description_field.send_keys(description) driver.find_element_by_xpath("//option[@label='Regras de localização - art.º 6.º [regras especificas]']").click() salary = str(int(config.get("company", "salary")) * 100) salary_field = driver.find_element_by_xpath("//input[@name='valorBase']") salary_field.send_keys(salary) driver.find_element_by_xpath("//button[text() = 'Emitir']").click() sleep(1) driver.find_element_by_xpath("//div[@class = 'modal-dialog']//button[text() = 'Emitir']").click() sleep(2) logging.info("Invoice created.") driver.close()
def test_no_email_and_no_passowrd(self): # Login with incorrect password util.login(self.driver, '', '') # Check for alert alertsusername = util.get_alert_boxes(self.driver, 'Email address is required') self.assertEqual(len(alertsusername), 1) alertspassword = util.get_alert_boxes(self.driver, 'Password is required') self.assertEqual(len(alertspassword), 1)
def setUpClass(cls): # Launch Selenium cls.driver = util.launch_driver() # Create test account cls.user_data = util.create_user(cls.driver) # Login to test account util.login(cls.driver, cls.user_data['username'], cls.user_data['password'])
def tearDownClass(cls): # Need to login again to delete project util.login(cls.driver, cls.user_data['username'], cls.user_data['password']) # Delete test project util.delete_project(cls.driver) # Close WebDriver cls.driver.close()
def tearDown(self): # Need to login again to delete project util.login( self.driver, self.user_data['username'], self.user_data['password'] ) # Call parent tearDown super(UITests, self).tearDown()
def test_login(self): # Login util.login( self.driver, self.user_data['username'], self.user_data['password'] ) # Assert that browser is pointing to /dashboard self.assertTrue('/dashboard' in self.driver.current_url)
def setUpClass(cls): cls.driver = util.launch_driver() # Create user account and login cls.user_data = util.create_user(cls.driver) util.login( cls.driver, cls.user_data['username'], cls.user_data['password'] )
def setUp(self): # Call parent setUpClass super(UserSmokeTest, self).setUp() # Create user account and login self.user_data = util.create_user(self.driver) util.login( self.driver, self.user_data['username'], self.user_data['password'] )
def test_add_contributor_log(self): """ test to make sure that add contributor log works correctly """ # As of 9 Sep 2013, log says "component"; expected "project" # Log out user_url = self.get_user_url() util.logout(self.driver) # Create second user and get his url second_user_data = util.create_user(self.driver) util.login( self.driver, second_user_data['username'], second_user_data['password'] ) project_url = util.create_project(self.driver) #add contributor self.add_contributor(self.user_data) #get log message_log = self.get_log() #assert the time self._assert_time(message_log.log_time) #assert the log self.assertEqual( message_log.log_text, u'{} added {} as contributor on node {}'.format( second_user_data['fullname'], self.user_data['fullname'], config.project_title, ) ) #check the user_url and project_url self.assertEqual( message_log.log_url[0], self.get_user_url() ) self.assertEqual( message_log.log_url[1], user_url ) self.assertEqual( message_log.log_url[2], project_url.strip('/') )
def test_logout(self): # Login util.login(self.driver, self.user_data['username'], self.user_data['password']) #logout util.logout(self.driver) # Check for alert alerts = util.get_alert_boxes(self.driver, 'You have successfully logged out.') self.assertEqual(len(alerts), 1)
def setUpClass(cls): # Start WebDriver cls.driver = util.launch_driver() # Create test user cls.user_data = util.create_user(cls.driver) # Login to test account util.login( cls.driver, cls.user_data['username'], cls.user_data['password'] )
def tearDownClass(cls): # Need to login again to delete project util.login( cls.driver, cls.user_data['username'], cls.user_data['password'] ) # Delete test project util.delete_project(cls.driver) # Close WebDriver cls.driver.close()
def login(): print('HIJIJIJI') if request.method == 'POST': username = request.form['username'] password_candidate = request.form['password'] usr_pwd = util.login(link, db_name, collection_name, username) if usr_pwd['username'] and usr_pwd['password']: if sha256_crypt.verify(password_candidate, usr_pwd['password']): # Passed # Login credentials are valid session['logged_in'] = True session['username'] = usr_pwd['username'] #print(request.headers.items()) print('HIII ', session['username']) #print(request.form) flash('You have logged in', 'success') ## For mobile app #return jsonify({'message':'logged in'}) return redirect(url_for('dashboard')) else: # Failed flash('Invalid login') error_msg = 'Invalid login' return render_template('login.html', error=error_msg) else: flash('Username not found') error_msg = 'Username not found' return render_template('login.html', error=error_msg) return render_template('login.html')
def test_language_spot_check(self): ''' Test that there are no visible labels. ''' self.driver = login(data, self.driver, self.log) # Wait for Processes page to load self.wait.until(EC.visibility_of_element_located((By.ID, 'SETUP'))) languages = read_from_json_file(self.driver.data['repository_path'], '/includes/expected_values.json', 'Languages') # Get current URL and re-get URL with different language for i in range(1, len(languages)): url = self.driver.current_url url = re.sub('/' + languages[i - 1] + '/', '/' + languages[i] + '/', url) self.driver.get(url) # Wait for Processes page to load self.wait.until(EC.visibility_of_element_located((By.ID, 'SETUP'))) # Assert that labels are not present on page try: self.assertEqual( None, re.search(r'\*\*(\w+)\*\*', self.driver.page_source)) self.driver.log.append('Labels not found') except: self.driver.log.append('Labels found') self.log = self.driver.log
def main(args): base = util.get_value(args.aws, 'monoUrl') gets = [base + 'api/values', base + 'api/init/users'] if not args.aws: gets.insert(0, base + 'api/init/table') # print('Init database and get default') for url in gets: print(f'Method GET endpoint {url}') response = requests.get(url) util.print_result(response) # auth = util.login(base, 'admin', 'demo') # print('Get my data') util.print_result(requests.get(base + 'api/auth/me', headers=auth)) # get_all_documents(base, auth) # doc = add_document(base, auth, "Invoice to be removed") # remove_document(base, auth, doc['id']) # doc = add_document(base, auth, "Invoice to be tested") # get_all_documents(base, auth) # get_permissions(base, auth) # get_permission_jwt(base, auth, doc['id']) # remove_all_documents(base, auth)
def login(): if request.method == 'POST': username = request.form['username'] password_candidate = request.form['password'] usr_pwd = util.login(link, db_name, collection_name, username) if usr_pwd['username'] and usr_pwd['password']: if sha256_crypt.verify(password_candidate, usr_pwd['password']): # Passed # Login credentials are valid session['logged_in'] = True session['username'] = usr_pwd['username'] flash('You have logged in', 'success') return redirect(url_for('dashboard')) else: # Failed flash('Invalid login') error_msg = 'Invalid login' return render_template('login.html', error=error_msg) else: flash('Username not found') error_msg = 'Username not found' return render_template('login.html', error=error_msg) return render_template('login.html')
def test_to_run(self): ''' List to hold log messages: the last string in the list is returned to PM4 output in run_test(). Attached to the driver in login method and returned to the class attribute at the end of the test. Inherited from BaseTest. ''' self.log ''' Webdriver instance to navigate through pages at server url. Object must be passed wherever it is used. Creating a new instance loses all navigation progress, including login. Inherited from BaseTest. ''' self.driver ''' WebDriverWait instance to wait for elements to load on pages. Object may be reinstantiated. Inherited from BaseTest with default timeout 120 seconds. ''' self.wait ''' Login method used at the beginning of each test navigation. login() returns driver. data is used here, but is defined in bootstrap.py file. Editors may underline data. ''' self.driver = login(data, self.driver, self.log) ''' Reattach log to class attribute at end of test. ''' self.log = self.driver.log
def main(): parser = argparse.ArgumentParser() parser.add_argument('--username', type=str, required=True) parser.add_argument('--password', type=str, required=True) parser.add_argument('--host', type=str) parser.add_argument('--token', type=str) parser.add_argument('--custom_id', type=str) parser.add_argument('--file', type=str, required=True, help='send e-mail from file') parser.add_argument('--type', type=int, default=BILL_OF_LADING_ID, help='send e-mail from file') args = parser.parse_args() if args.host: host = args.host else: host = DEFAULT_HOST if args.custom_id: _custom_id = args.custom_id else: _custom_id = str(uuid.uuid4()) if not args.token: _token = login(host, args.username, args.password) else: _token = args.token upload(host, args.file, args.type, _token, _custom_id) if not args.token: logout(host, _token)
def test_logout(self): # Login util.login( self.driver, self.user_data['username'], self.user_data['password'] ) #logout util.logout(self.driver) # Check for alert alerts = util.get_alert_boxes(self.driver, 'You have successfully logged out.') self.assertEqual(len(alerts), 1) #self.assertTrue('/dashboard' in self.driver.current_url)
def test_delete_contributor_log(self): # As of 9 Sep 2013, the log says "component"; expected "project" # Log out user_url = self.get_user_url() util.logout(self.driver) # Create second user and get his url second_user_data = util.create_user(self.driver) util.login( self.driver, second_user_data['username'], second_user_data['password'] ) project_url = util.create_project(self.driver) #add contributor self.add_contributor(self.user_data) time.sleep(3) #remove contributor self.remove_contributor(self.user_data) time.sleep(3) #get log message_log = self.get_log() #assert the time self._assert_time(message_log.log_time) #assert the log self.assertEqual( message_log.log_text, u'{} removed {} as a contributor from project {}'.format( second_user_data["fullname"], self.user_data['fullname'], config.project_title ) ) #check the second user_url, first user_url and project_url self.assertEqual(message_log.log_url[0], self.get_user_url()) self.assertEqual(message_log.log_url[1], user_url) self.assertEqual(message_log.log_url[2]+"/", project_url)
def setUp(self): # Start WebDriver self.driver = util.launch_driver() # Create test user self.user_data = util.create_user(self.driver) # Login to test account util.login( self.driver, self.user_data['username'], self.user_data['password'] ) # Create project and store URL self.url = util.create_project(self.driver)
def log_in(self, user=None): if not user: user = self.user_data return util.login( self.driver, user['username'], user['password'] )
def setUpClass(cls): # Start WebDriver cls.driver = webdriver.Firefox() # cls.driver.implicitly_wait(5) # Create user account and login cls.user_data = util.create_user(cls.driver) util.login(cls.driver, cls.user_data['username'], cls.user_data['password']) # Create test project and store URL cls.project_url = util.create_project(cls.driver) # Log out util.logout(cls.driver)
def main(argv): countries = util.get_countries(argv) if len(countries) == 0: return db_connection = util.login() queries = get_queries(countries) series = get_series_from_queries(db_connection, queries, 1930, 2018) util.plot_time_series(series) db_connection.close()
def setUpClass(cls): # Start WebDriver cls.driver = webdriver.Firefox() # cls.driver.implicitly_wait(5) # Create user account and login cls.user_data = util.create_user(cls.driver) util.login( cls.driver, cls.user_data['username'], cls.user_data['password'] ) # Create test project and store URL cls.project_url = util.create_project(cls.driver) # Log out util.logout(cls.driver)
def main(argv): countries = util.get_countries(argv) if len(countries) == 0: return db_connection = util.login() queries = get_queries(countries) series = get_series_from_queries(db_connection, queries) util.plot_bar_graph(series) db_connection.close()
def test_node_add_contributor_log(self): """ test to make sure that project log works correctly on adding contributor to a node """ # Log out user_url=self.get_user_url() util.logout(self.driver) # Create second user and get his url second_user_data = util.create_user(self.driver) util.login( self.driver, second_user_data['username'], second_user_data['password'] ) util.create_project(self.driver) util.create_node(self.driver) self.driver.find_element_by_css_selector("li span a").click() new_node_url=self.driver.current_url #add contributor self.add_contributor(self.user_data) #get log util.goto_project(self.driver) message_log = self.get_log() #assert the time self._assert_time(message_log.log_time) #assert the log self.assertEqual(message_log.log_text, second_user_data["fullname"] + " added " + self.user_data['fullname'] + " as contributor on node " + config.node_title) #check the second user_url, first user_url and node_url self.assertEqual(message_log.log_url[0], self.get_user_url()) self.assertEqual(message_log.log_url[1], user_url) self.assertEqual(message_log.log_url[2]+"/", new_node_url)
def test_node_add_contributor_log(self): """ test to make sure that project log works correctly on adding contributor to a node """ # Log out user_url = self.get_user_url() util.logout(self.driver) # Create second user and get his url second_user_data = util.create_user(self.driver) util.login(self.driver, second_user_data['username'], second_user_data['password']) util.create_project(self.driver) util.create_node(self.driver) self.driver.find_element_by_css_selector("li span a").click() new_node_url = self.driver.current_url #add contributor self.add_contributor(self.user_data) #get log util.goto_project(self.driver) message_log = self.get_log() #assert the time self._assert_time(message_log.log_time) #assert the log self.assertEqual( message_log.log_text, second_user_data["fullname"] + " added " + self.user_data['fullname'] + " as contributor on node " + config.node_title) #check the second user_url, first user_url and node_url self.assertEqual(message_log.log_url[0], self.get_user_url()) self.assertEqual(message_log.log_url[1], user_url) self.assertEqual(message_log.log_url[2] + "/", new_node_url)
def test_create(self): """ Test if API creates new todo item """ todo = {"title": 'Write API tests', "order": self.order, "user_id":1} todo1 = create(self, url='/api', inp=todo) assert todo1['title'] == 'Write API tests' assert todo1['order'] == 1 assert not todo1['completed'] assert todo1['user'] == 'tsheasha' todo = {"title": 'Write automation tests', "order": self.order, "user_id":1} todo2 = create(self, url='/api', inp=todo) assert todo2['title'] == 'Write automation tests' assert todo2['order'] == 2 assert not todo2['completed'] assert todo2['user'] == 'tsheasha' assert todo1['id'] != todo2['id'] logout(self) login(self, "nahla", "password") todo = {"title": 'Write automation tests', "order": self.order, "user_id":2} todo3 = create(self, url='/api', inp=todo) assert todo3['title'] == 'Write automation tests' assert todo3['order'] == 3 assert not todo3['completed'] assert todo3['user'] == 'nahla'
def login(): if request.method == 'POST': data = {k: v[0] for k, v in dict(request.form).items()} res = util.login(data) if res['code'] == 0: if util.role(data)[0] == 0: return redirect('/adminmanager') else: return render_template('userinfo.html', data=data) else: return render_template('login.html', res=res) else: res = {'msg': ''} return render_template('login.html', res=res)
def process_login(self, username, password): if util.login(username, password, self.session) == None: self.message = "There was an error logging in. Try again?" self.title = "Login error -- try again" self.targetid = "" self.session.trace_msg("Login error for user %s" % username) return self.respond() else: t = xhtml.xhtml() t.port = self.port t.host = self.host t.title = "Logged in" self.session.trace_msg("User %s sucessfully logged in." % username) t.body = "<p>Login successful! <a href=\"MainMenu\">Start working</a>.</p>" t.redirect_url = "MainMenu" return t.respond()
def start(self): """ Starts the blacklister process. """ # Load blacklist print('Loading blacklist...'), self.blacklist = util.load_list(util.BLACKLIST_FILE, ',') print(str(self.blacklist)) # Log in to reddit self.reddit = util.login(MentionedBot.USER_AGENT) while True: try: self.tick() except Exception as e: print(e)
def login(self, auth=True): """ Logs into reddit """ self.hello() self.reddit = util.login(self.USER_AGENT, auth)
pickle.dump(events, dumpfile) # Write output with open('output.csv', 'w') as csvfile: writer = DictWriter(csvfile, fieldnames=events[0].keys()) writer.writeheader() for event in events: writer.writerow(event) # Submit events for event in events: util.submit_event( email=event['meta_submitter_email'], title=event['title'], description=event['content_description'], location=event['location'], start_date=event['start'].split('T')[0], start_time=event['start'].split('T')[1][:5], end_time=event['end'].split('T')[1][:5], base_url=base_url ) # Publish events & close tickets cookies = util.login(username, password, base_url=base_url) tickets = util.get_tickets(cookies, category='EVN', state='open', base_url=base_url) for ticket in tickets: util.accept_ticket(cookies, ticket) util.accept_event(cookies, ticket) util.close_ticket(cookies, ticket)
if not (args.p and args.f and args.l): parser.error("Please provide problem name(-p) and source file location(-f) and Programming Language(-l)") if not os.path.exists(args.f): parser.error("The source code file does not exist") username = raw_input("Username:"******"Could not login") print "Successfully Logged in!" print "Submitting Your source code..." r = util.submit(cookies, pname, file, lang_code, contest) if not r: print "Could not submit the problem.Please check if problem name and/or contest name are correct" util.logout(cookies) exit() s_id = util.get_submission_id(r.text) if not s_id: print "There was some problem in retrieving your submission id.Please try again." util.logout(cookies)
def login(self, username, password): return util.login(self.client, username, password)
def post(self): data = json.loads(self.request.body) email = data['email'] location = data['location'] self.write(util.login(email, location))