class Test(unittest.TestCase): @classmethod def setUpClass(cls): #清除以前的测试结果 op_db.sql_DML(settings.CLEAR_RESULT_SQL) #cls.driver = BrowserEngine(parames).start_browser() cls.driver = BrowserEngine("chrome").start_browser() #lo = LoginPage(cls.driver) #lo.login(**{"username":"******","password":11223 @ddt.data(*data) @ddt.unpack # @unittest.skipIf(**data["is_run"] == 0,"不执行测试") def test(self, *args, **kwargs): self.log = LogRecord() self.logger = self.log.log_record(self) global r r = RunMain(kwargs, self.logger) #res = r.run_main(self.driver,parames) self.res = r.run_main(self.driver) if self.res != None: self.assertTrue(self.res) def tearDown(self): if r.is_run and self.res: r.post_act(self.driver) #数据清理操作 OperaPics().save_pic_main(self) self.log.close() @classmethod def tearDownClass(cls): cls.driver.quit() op_db.close()
def test(self, *args, **kwargs): self.log = LogRecord() self.logger = self.log.log_record(self) global r r = RunMain(kwargs, self.logger) #res = r.run_main(self.driver,parames) self.res = r.run_main(self.driver) if self.res != None: self.assertTrue(self.res)
def setUpClass(cls): #print("setupclass") print(parames) cls.driver = BrowserEngine(parames).start_browser() cls.rp = RegisterPage(cls.driver) cls.log = LogRecord() cls.logger = cls.log.log_record()
class RunMain: def __init__(self): self.con = ConfigData() self.opera = OperaMethods() self.log = LogRecord() self.logger = self.log.get_log() def run_main(self): row_num = self.con.get_lines() for i in range(1, row_num): is_run = self.con.get_is_run(i) self.logger.info("44445") if is_run == "yes": opera_method = self.con.get_opera_method(i) opera_element_key = self.con.get_opera_element_key(i) opera_data = self.con.get_opera_data(i) expect_element_key = self.con.get_expect_element(i) expect_element_method = self.con.get_expect_method(i) expect_element_data = self.con.get_expect_result(i) method = getattr(self.opera, opera_method) if opera_element_key == None and opera_data == None: method() elif opera_element_key != None and opera_data == None: method(opera_element_key) elif opera_element_key == None and opera_data != None: method(opera_data) else: method(opera_element_key, opera_data) if expect_element_method: expect_method = getattr(self.opera, expect_element_method) if expect_element_key: result = expect_method(expect_element_key, expect_element_data) else: result = expect_method(expect_element_data) if result: self.con.write_real_result(i, "pass") else: self.con.write_real_result(i, "fail") self.log.close_handle()
def enter_upload_page(self): self.open() self.click_element(self.get_share_kng_btn_element()) self.switch_window() def enter_upload_scorm_page(self): self.open() self.move_to_target(self.get_share_kng_btn_element()) self.click_element(self.get_scorm_upload_btn()) self.switch_window() def enter_upload_html_page(self): self.open() self.move_to_target(self.get_share_kng_btn_element()) self.click_element(self.get_html_upload_btn()) self.switch_window() def delete_file(self): self.move_to_target(self.get_first_edit_btn_element()) self.click_element(self.get_first_delete_btn_element()) al = self.switch_alert() al and al.accept() self.get_ele.wait_element_disappear("loading_status", "kng_element") if __name__ == "__main__": driver = BrowserEngine("chrome").start_browser() log = LogRecord() logger = log.log_record()
def __init__(self): self.con = ConfigData() self.opera = OperaMethods() self.log = LogRecord() self.logger = self.log.get_log()
import sys, os sys.path.append(os.path.join(os.getcwd(), "..")) import ddt from business.register_business import RegisterBusiness from selenium import webdriver import HTMLTestRunner import os import unittest from base.get_case_data import GetCaseData from log.log_record import LogRecord get_data = GetCaseData() data = get_data.get_case_data() log = LogRecord() logger = log.get_log() @ddt.ddt class FirstDdtCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.driver = webdriver.Chrome() cls.driver.maximize_window() cls.driver.get("http://www.5itest.cn/register") cls.regsiter_b = RegisterBusiness(cls.driver) # @ddt.data( # ["email","username","password","code","email_error","请输入有效的电子邮件地址","邮箱校验失败"], # ["*****@*****.**", "u", "password", "code", "username_error", "字符长度必须大于等于4,一个中文字算2个字符", "用户名校验失败"], # ["*****@*****.**", "username1", "p", "code", "password_error", "最少需要输入 5 个字符", "密码格式校验失败"], # )