def setUp(self): print("每条case执行之前") self.file_path = "/Users/qing.li/PycharmProjects/hm/selenium_/imooc/image/imooc_code_%s.png" % ( time.time()) self.driver = webdriver.Chrome() self.driver.get("http://www.5itest.cn/register") self.driver.maximize_window() self.register = RegisterBusiness(self.driver) # self.register_function = RegisterFunction(self.driver, self.file_path) self.register_code = GetCode(self.driver, self.file_path)
def setUp(self): self.driver = webdriver.Chrome( "C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\Application" "\\chromedriver.exe") # self.driver = webdriver.Chrome() option = webdriver.ChromeOptions() option.binary_location = r'C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chrome.exe' self.driver.get("http://www.5itest.cn/register?goto=/") self.logger.info("打开浏览器成功") self.login = RegisterBusiness(self.driver)
def setUp(self): print("开始执行case") option = webdriver.ChromeOptions() # 无界面使用 option.add_argument('--headless') # 设置浏览器分辨率(窗口大小 option.add_argument("--window-size=1920,1080") self.driver = webdriver.Chrome(chrome_options=option) self.driver.get("http://www.5itest.cn/register") self.register_b = RegisterBusiness(self.driver)
def setUp(self): self.user_log.get_logger().info("setUp") chrome_options = Options() chrome_options.add_argument('--no-sandbox') chrome_options.add_argument('--disable-dev-shm-usage') chrome_options.add_argument('--headless') self.driver = webdriver.Chrome(chrome_options=chrome_options) self.driver.get("http://www.yundama.com/index/reg") self.driver.maximize_window() self.register_business = RegisterBusiness(self.driver)
class FirstCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.logger = UserLog() cls.log = cls.logger.get_log() @classmethod def tearDownClass(cls): cls.logger.close_log() def setUp(self): self.driver = webdriver.Chrome() self.driver.get("http://www.5itest.cn/register") self.log.info("This is chrome") self.driver.maximize_window() self.register_b = RegisterBusiness(self.driver) self.file_name = "C:/Users/TSDLJ/PycharmProjects/UITest_muke/screenshot.png" def tearDown(self): print('这是case的后置条件') # sys.exc_info() # 报错时截图 for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName image_path = os.getcwd() + "/image/" + case_name + ".png" self.driver.save_screenshot(image_path) self.driver.close() def test_email_error(self): email_error = self.register_b.email_login("123", "user12345", "111111", self.file_name) # email_error返回True或者False,返回True时,说明email错误提示没有显示,断言结果为F;email错误提示显示显示时,断言结果为OK self.assertFalse(email_error, '邮箱验证case执行') def test_username_error(self): username_error = self.register_b.username_login( "*****@*****.**", "11", "111111", self.file_name) self.assertFalse(username_error, '用户名验证case执行') def test_password_error(self): password_error = self.register_b.password_login( "*****@*****.**", "user12343", "11", self.file_name) self.assertFalse(password_error, '密码验证case执行') def test_code_error(self): code_error = self.register_b.code_login("*****@*****.**", "user12356", "111111", self.file_name) self.assertFalse(code_error, '验证码验证case执行') def test_login_success(self): success = self.register_b.register_succes("*****@*****.**", "user23211", "111111", self.file_name) self.assertTrue(success, '登录验证case执行')
def setUp(self): log = UserLog() # 实例化日志 logger = log.get_log() # 获得logger对象 warnings.simplefilter('ignore', ResourceWarning) self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.driver.maximize_window() logger.info('this is chrome') # 打印debug级别的日志 log.close_handle() # 移除handle self.register = RegisterBusiness(self.driver) self.file_name = 'D:/Imooc_project/yztp/yzm.png'
class FirstCase(unittest.TestCase): @classmethod def setUpClass(cls) -> None: cls.log = UserLog() cls.logger = cls.log.get_log() def setUp(self) -> None: self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.logger.info("this is chrome") self.login = RegisterBusiness(self.driver) self.file_name = os.path.join(BATH_PATH, 'image', 'test001.png') def tearDown(self) -> None: time.sleep(2) # 捕获程序是否有异常,有则截图保存 for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(BATH_PATH, 'report', case_name + '.png') self.driver.save_screenshot(file_path) self.driver.close() @classmethod def tearDownClass(cls) -> None: cls.log.close_handle() def test_login_email_error(self): email_error = self.login.login_email_error('34', 'user111', '11111', self.file_name) return self.assertFalse(email_error, "测试失败") def test_login_username_error(self): username_error = self.login.login_name_error('*****@*****.**', 't1', '111111', self.file_name) self.assertTrue(username_error) def test_login_code_error(self): code_error = self.login.login_code_error('*****@*****.**', 'ss22212', '111111', self.file_name) self.assertFalse(code_error) def test_login_password_error(self): password_error = self.login.login_password_error( '*****@*****.**', 'ss23222', '111111', self.file_name) self.assertFalse(password_error) def test_login_success(self): # success = self.login.register_success('*****@*****.**', '23213', '111111', self.file_name) # 成功 success = self.login.register_success('12221', '2321', '111111', self.file_name) # 失败 # print(success) self.assertTrue(success)
def setUp(self) -> None: self.driver = webdriver.Chrome() self.driver.get("http://www.5itest.cn/register") self.register_log.info("this is Chrome") self.r_log.output_log() self.driver.maximize_window() path = "../config/LocalElement.ini" i_vcode = IdentifyVCode(self.driver, self._testMethodName, path) # self.v_code = i_vcode.get_jj_varify_code("code_image") self.register_b = RegisterBusiness(self.driver, path)
class FirstCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.log = UserLog() cls.logger = cls.log.get_log() cls.file_name = "E:/Teacher/Imooc/SeleniumPython/Image/test001.png" cls.driver = webdriver.Chrome() cls.driver.get('http://www.5itest.cn/register') cls.driver.maximize_window() def setUp(self): self.driver.refresh() self.logger.info("this is chrome") self.login = RegisterBusiness(self.driver) def tearDown(self): time.sleep(2) #if sys.exc_info()[0]: for method_name,error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(os.getcwd()+"/report/"+case_name+".png") self.driver.save_screenshot(file_path) #print("这个是case的后置调键1") @classmethod def tearDownClass(cls): cls.log.close_handle() cls.driver.close() #邮箱、用户名、密码、验证码、错误信息定位元素、错误提示信息 def test_login_email_error(self): email_error = self.login.login_email_error('*****@*****.**','*****@*****.**','111111',self.file_name) return self.assertFalse(email_error,"测试失败") def test_login_username_error(self): username_error = self.login.login_name_error('*****@*****.**','t1','111111',self.file_name) self.assertTrue(username_error) def test_login_code_error(self): code_error = self.login.login_name_error('*****@*****.**','ss22212','111111',self.file_name) self.assertFalse(code_error) def test_login_password_error(self): password_error = self.login.login_name_error('*****@*****.**','ss23222','111111',self.file_name) self.assertFalse(password_error) def test_login_success(self): success = self.login.user_base('*****@*****.**','2321','111111',self.file_name) self.assertFalse(success)
class Caigoudan: def __init__(self): warnings.simplefilter('ignore', ResourceWarning) self.driver = webdriver.Chrome() self.driver.get('http://scm.gyl.test.9now.net/login.html') self.driver.maximize_window() sleep(3) self.login = RegisterBusiness(self.driver) def caigoudan_login(self): self.login.login('203496', 'admin', '123456', '8888')
class FirstCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.log = UserLog() cls.logger = cls.log.get_log() def setUp(self): self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.driver.maximize_window() self.logger.info("this is the chrome") self.rb = RegisterBusiness(self.driver) self.file_name = 'E:/PycharmProjects/seleniumPython/image/test001.png' def tearDown(self): print('这是后置条件') for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(os.getcwd() + "/report/" + case_name + ".png") self.driver.save_screenshot(file_path) self.driver.close() @classmethod def tearDownClass(cls): cls.log.close_handle() def test_login_email_error(self): email_error = self.rb.login_email_error('*****@*****.**', 'user111', '11111', self.file_name) self.assertFalse(email_error, '此条email的case执行了') def test_login_username_error(self): username_error = self.rb.login_name_error('*****@*****.**', 'sss', '11111', self.file_name) self.assertFalse(username_error) def test_login_password_error(self): password_error = self.rb.login_password_error('*****@*****.**', 'user11', '1111', self.file_name) self.assertTrue(password_error) def test_login_code_error(self): code_error = self.rb.login_code_error('*****@*****.**', 'user11', '11111', self.file_name) self.assertTrue(code_error) def test_login_success(self): success = self.rb.user_base('*****@*****.**', 'user111', '11111', self.file_name) self.assertFalse(success)
class FirstCase(unittest.TestCase): # def setUpClass(cls): # cls.driver = webdriver.Chrome() # cls.driver.get('https://sso.ifanr.com/register/') # cls.driver.maximize_window() # cls.login = RegisterBusiness(cls.driver) def setUp(self): self.driver = webdriver.Chrome() self.driver.get('https://sso.ifanr.com/register/') self.driver.maximize_window() self.login = RegisterBusiness(self.driver) def tearDown(self): # 在这个过程中解决截图操作 time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_name = os.path.join(os.getcwd() + '/image/' + case_name + '.png') self.driver.save_screenshot(file_name) # print(self._outcome) # file_name = r'D:\PycharmProjects\ImoockSelenium\Image' + 'case_name' + '.png' # self.driver.save_screenshot(file_name) # self.driver.close() # def tearDownClass(cls): # cls.driver.close() def test_register_email_error(self): #一目了然的命名 测试登录时 邮箱错误 email_error = self.login.register_email_error('youxiangerror', '34', '111aaa', '111aaa') self.assertIs(email_error, '注册成功,第一条case结果为失败,输入的邮箱为正确格式的邮箱') # self.assertFalse(email_error,'第一条case结果为通过,输入邮箱格式为错误,邮箱校验通过。') # if email_error == True: #获取不到错误信息 就是邮箱格式为正确的 # print('注册成功,第一条case结果为失败,输入的邮箱为正确格式的邮箱') # else: # print('注册失败。第一条case结果为通过,输入邮箱格式为错误,邮箱校验通过。') def test_register_password_error(self): password_error = self.login.register_password_error( '*****@*****.**', 'password', '111aaa', '111') self.assertFalse(password_error, 'case执行了') # if password_error == True:#获取不到密码错误元素。2次密码相同 # print('注册成功,第二条case失败,2次输入密码相同') # else: # print('注册失败,第二条case结果为通过,输入的2次密码不一致') def test_register_repeat_error(self): repeat_error = self.login.register_repeat_error( '*****@*****.**', 'mima', '111aaa', '111aaa') self.assertFalse(repeat_error, 'case执行了')
class FirstCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.log = UserLog() cls.logger = cls.log.get_log() cls.driver = webdriver.Chrome() cls.driver.get('http://www.5itest.cn/register') def setUp(self): self.logger.info("this is chrome") self.login = RegisterBusiness(self.driver) def tearDown(self): time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join("E:/pythonProject/SeleniumPython" + "/report/" + case_name + ".png") self.driver.save_screenshot(file_path) @classmethod def tearDownClass(cls): cls.log.close_handle() cls.driver.close() #邮箱、用户名、密码、验证码、错误信息定位元素、错误提示信息 def test_login_email_error(self): email_error = self.login.login_email_error('32', 'user111', '111111', 'test1') return self.assertFalse(email_error, '测试失败') #通过assert判断是否为error def test_login_username_error(self): username_error = self.login.login_email_error('*****@*****.**', 'ss', '111111', 'test1') self.assertFalse(username_error) def test_login_code_error(self): code_error = self.login.login_email_error('*****@*****.**', 'ss', '111111', 'test1') self.assertFalse(code_error) def test_login_password_error(self): password_error = self.login.login_email_error('*****@*****.**', 'ss', '111111', 'test1') self.assertFalse(password_error) def test_login_success(self): success = self.login.user_base('*****@*****.**', 'ss', '111111', 'test1') self.assertFalse(success)
def setUp(self): # self.file_name = "E:/programs/pycharmprojects/selenium_python/pageobject/image/test01.png" self.driver = webdriver.Chrome( 'C:\Program Files (x86)\Google\Chrome\Application\\chromedriver.exe' ) self.driver.maximize_window() time.sleep(2) self.driver.get('http://www.5itest.cn/register') self.logger.info('this is chrome') self.RB = RegisterBusiness(self.driver)
class RegisterCase(unittest.TestCase): @classmethod def setUpClass(cls) -> None: cls.log = UserLog() cls.logger = cls.log.get_logger() def setUp(self) -> None: self.driver = webdriver.Firefox() self.driver.get('http://www.5itest.cn/register') self.driver.maximize_window() self.logger.info('this is firefox') self.register = RegisterBusiness(self.driver) def tearDown(self) -> None: time.sleep(2) # self.driver.save_screenshot(r'F:\Python\5itest_po_3\report\11.png') #当使用HTMLtestrunner模式运行,不会进行打印操作,但是函数依旧会运行 # print('==============') # print(self.__dir__()) #截图是可以配合断言一起使用的,当断言失败,即case执行异常,也会截图 for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path_1 = os.path.join(pro_root_path + '/report/' + case_name + '.png') print(file_path_1) self.driver.save_screenshot(file_path_1) self.driver.close() print("这是case的后置条件") @classmethod def tearDownClass(cls) -> None: cls.log.close_logger() def test_email_error(self): self.register.user_base('34abc', 'aaasdf', '111111', 'asd2f') email_error = self.register.get_user_text('user_email_error') if email_error is None: flag = True else: flag = False self.assertFalse(flag, 'case执行失败') def test_username_error(self): pass def test_password_error(self): pass def test_code_error(self): pass
class FirstCase(unittest.TestCase): """ case层 """ @classmethod def setUpClass(cls) -> None: cls.log = UserLog() cls.logger = cls.log.get_log() def setUp(self): self.register_b = RegisterBusiness() self.logger.info("this is textt") # self.file_name = selenium_driver.get_picture('re') # self.code_text = selenium_driver.code_base64(self.file_name) def tearDown(self): time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName error_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) case_error_path = os.path.join(error_path + "/report/" + case_name + '.png') selenium_driver.img_png(case_error_path) selenium_driver.close_driver() @classmethod def tearDownClass(cls) -> None: cls.log.close_log() # 邮箱、用户名、密码、验证码、错误信息元素、错误提示信息 def test_register_email_error(self): email_error = self.register_b.register_email_error('qweqwe', '程柔位', '123456', 'code1') self.assertFalse(email_error) # 断言是否为false def test_register_username_error(self): name_error = self.register_b.register_name_error('*****@*****.**', '1', '123456', 'code1') self.assertFalse(name_error) def test_register_password_error(self): password_error = self.register_b.register_password_error('*****@*****.**', 'chengtouwei', '1234', 'code1') self.assertFalse(password_error) def test_register_code_error(self): code_error = self.register_b.register_code_error('*****@*****.**', 'chengtouwei', '123456', 'code1') self.assertFalse(code_error) def test_register_success(self): success = self.register_b.register_succes('*****@*****.**', 'chengtouwei', '123456', 'code1') self.assertTrue(success)
class FirstCase(unittest.TestCase): #装饰器 :@classmethod :所有case执行之前都会执行.只会被执行一次 @classmethod def setUpClass(cls): cls.log=UserLog () cls.logger=cls.log.get_log () @classmethod def tearDownClass(cls): cls.logger.debug('Wancheng') cls.log.close_handle () def setUp(self): self.driver =webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.logger.debug ( "asdasdasd a" ) self.rBusiness = RegisterBusiness(self.driver) def tearDown(self): self.driver.close() def test_login_emil_erro(self): emali_error = self.rBusiness.register_email_erro('email','username','password','code') self.assertFalse(emali_error)
class FirstDdtCase(unittest.TestCase): def setUp(self): #print('测试开始前执行') self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.driver.maximize_window() self.login = RegisterBusiness(self.driver) def tearDown(self): #print('测试完成后执行') #if sys.exc_info()[0]: for method_name,error in self._outcome.errors: #_outcome.errors能获取当前运行case名称和错误信息 if error: #如果有错误信息 case_name = self._testMethodName #获取当前运行错误case的名称 path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #获取当前文件目录的上一级目录 file_path = path +'\\report\\'+case_name+'.png' #存储路径 self.driver.save_screenshot(file_path) #截图 time.sleep(3) self.driver.quit() ''' @ddt.data( #ddt数据 ['12','kiv111','cde33333','321','user_email_error','请输入有效的电子邮件地址'], ['qq.com','kiv111','cde33333','321','user_email_error','请输入有效的电子邮件地址'], ['12qq.com','kiv111','cde33333','321','user_email_error','请输入有效的电子邮件地址'], ) @ddt.unpack #解包 ''' @ddt.data(*data) def test_register_case(self,data): email,name,password,code,assertCode,assertText = data #为data里的每一个字段赋值,赋值到相应字段名 email_error = self.login.register_function(email,name,password,code,assertCode,assertText) #也就是cls.file_name return self.assertFalse(email_error,'case执行失败') #判断结果是否为false,不为false时候 打印'case执行'
class FirstDdtCase(unittest.TestCase): def setUp(self): self.register_b = RegisterBusiness() # self.file_name = selenium_driver.get_picture('re') def tearDown(self): time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName error_path = os.path.dirname( os.path.dirname(os.path.dirname( os.path.abspath(__file__)))) case_error_path = os.path.join(error_path + "/report/" + case_name + '.png') selenium_driver.img_png(case_error_path) ''' @ddt.data( ["123", 'anmuxi', '12345', 'code', 'user_email_error'], ["@123.com", 'anmuxi', '12345', 'code', 'user_email_error'], ["*****@*****.**", 'anmuxi', '12345', 'code', 'user_email_error'] ) @ddt.unpack ''' @ddt.data(*data) def test_register_case(self, data): email, name, password, file_name, assertcode = data email_error = self.register_b.register_function( email, name, password, file_name, assertcode) self.assertFalse(email_error) # 断言是否为false
class firstDdtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get("http://www.5itest.cn/register?goto=/") self.login = RegisterBusiness(self.driver) def tearDown(self): time.sleep(2) for method_name,error in self._outcome.errors: if error: casename = self._testMethodName file_path = os.path.join(os.getcwd() + "\\report\\"+casename+".png") self.driver.save_screenshot(file_path) self.driver.close() ''' @ddt.data( ['111','22','333','11','email_error','请输入有效的电子邮件地址'], ['*****@*****.**', '22', '333', '11', 'email_error', '请输入有效的电子邮件地址'], ['111', '22', '333', '11', 'email_error', '请输入有效的电子邮件地址'] )''' @ddt.data(*data) def test_register_case(self,data): email,username,password,code,assertcode,asserttext = tuple(data) print(data) email = str(email) username = str(username) password = str(password) code = str(code) assertcode = str(assertcode) asserttext = str(asserttext) email_error = self.login.register_function(email,username,password,code,assertcode,asserttext) return self.assertTrue(email_error,"case执行成功")
class FirstDdtCase(unittest.TestCase): def setUp(self) -> None: self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.login = RegisterBusiness(self.driver) def tearDown(self) -> None: time.sleep(2) # 捕获程序是否有异常,有则截图保存 for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(BATH_PATH, 'report', case_name + '.png') self.driver.save_screenshot(file_path) self.driver.close() @ddt.data(*data) @ddt.unpack def test_register_case(self, *data): email, username, password, assertCode, assertText = data email_error = self.login.register_function(email, username, password, file_name, assertCode, assertText) self.assertFalse(email_error, "测试失败")
class SecondCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.log = UserLog() cls.logger = cls.log.get_log() def setUp(self): self.driver = webdriver.Chrome() self.driver.get("https://login.dangdang.com/register.php?returnurl=http://myhome.dangdang.com/myOrder") self.register_b = RegisterBusiness(self.driver) self.logger.info("这。。。This is Chrome, second_case test") def tearDown(self): # time.sleep(1) for error in self._outcome.errors: if error: case_name = self._testMethodName # case_name = self._testMethodDoc file_path = os.path.join(os.getcwd()+"\\dangdang\\report\\"+case_name+".png") self.driver.save_screenshot(file_path) self.driver.close() log.close_log() @classmethod def tearDownClass(cls): cls.log.close_log() @ddt.data(*data) def test_register_login(self,data): phone,password,password_review,codetext,assertCode,assertText = data # self.register_b.login_input_data(name,password,password_review,codetext,phone) just_result = self.register_b.login_judgment(phone,password,password_review,codetext,assertCode,assertText) self.assertTrue(just_result,"检测到error信息,case执行")
class FirstDdtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.login = RegisterBusiness(self.driver) self.file_name = "E:/SELENIUMPYTHON/Image/test001.png" def tearDown(self): time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(os.getcwd() + "/report/" + case_name + ".png") self.driver.save_screenshot(file_path) self.driver.close() print("执行完一条case") ''' @ddt.data( ['test001','username01','password','code','user_email_error','请输入有效的电子邮件地址'], ['@qq.com','username01','password','code','user_email_error','请输入有效的电子邮件地址'], ['*****@*****.**','username01','password','code','user_email_error','请输入有效的电子邮件地址'] ) @ddt.unpack ''' @ddt.data(*data) def test_register_case(self, data): email, username, password, code, assertCode, assertText = data email_error = self.login.register_function(email, username, password, code, assertCode, assertText) self.assertFalse(email_error, "测试失败")
class FirstDdtCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.log = UserLog() cls.logger = cls.log.get_log() def setUp(self): warnings.simplefilter('ignore', ResourceWarning) self.driver = webdriver.Chrome() self.driver.get('http://scm.gyl.test.9now.net/login.html') self.driver.maximize_window() self.logger.info("chrome is openning") sleep(3) self.login = RegisterBusiness(self.driver) def tearDown(self): #截图处理代码每次用例执行完毕后会在收尾处进行截图 case_name = self._testMethodName #用例的名字 self.driver.save_screenshot('D:\\Imooc_selenium\\Image\\%s.png' % case_name) self.driver.close() @classmethod def tearDownClass(cls): cls.log.close_handle() @ddt.data(*data) def test_login(self, data): shopname, username, password, code = data res = self.login.login(shopname, username, password, code) return res
class FirstDdtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.rBusiness = RegisterBusiness(self.driver) def tearDown(self): # time.sleep(5) self.driver.close() # ["*****@*****.**","http://www.5itest.cn/register","1qaz2wsx","code","user_name_error","字符长度必须小于等于18,一个中文字算2个字符"], # ["*****@*****.**","OneDate","1qaz2wsx","code","user_name_error","验证码错误"] ''' @ddt.data( ["12","123123","666666","code","user_email_error","请输入有效的电子邮件地址"] ) 解包,数据长度要一致 @ddt.unpack def test_register_error(self,email,username,password,code,asssertCode,assertText): error = self.rBusiness.register_function(email,username,password,code,asssertCode,assertText) logging.info ( '用例被运行了' ) self.assertFalse(error,'测试失败') ''' #excle 表 取数据的形式 使用方式 @ddt.data(*data) def test_register_error(self, data): email, username, password, code, asssertCode, assertText = data error = self.rBusiness.register_function(email, username, password, code, asssertCode, assertText) logging.info('用例被运行了') self.assertFalse(error, '测试失败')
class FirstDdtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.driver.maximize_window() self.rb = RegisterBusiness(self.driver) self.file_name = 'E:/PycharmProjects/seleniumPython/image/test001.png' def tearDown(self): time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(os.getcwd() + "/report/" + case_name + ".png") self.driver.save_screenshot(file_path) self.driver.close() ''' @ddt.data( ['12', 'Mushishi01', '111111', 'E:/PycharmProjects/seleniumPython/image/test001.png', 'user_email_error', '请输入有效的电子邮件地址'], ['@qq.com', 'Mushishi01', '111111', 'E:/PycharmProjects/seleniumPython/image/test001.png', 'user_email_error', '请输入有效的电子邮件地址'], ['*****@*****.**', 'Mushishi01', '111111', 'E:/PycharmProjects/seleniumPython/image/test001.png', 'user_email_error', '请输入有效的电子邮件地址'] ) @ddt.unpack ''' @ddt.data(*data) def test_register_case(self, data): email, username, password, self.file_name, assertCode, assertText = data email_error = self.rb.register_function(email, username, password, self.file_name, assertCode, assertText) self.assertFalse(email_error, '测试失败')
class FirstDdtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get("http://www.5itest.cn/register?goto=/course/explore") self.driver.maximize_window() self.login = RegisterBusiness(self.driver) def tearDown(self): time.sleep(2) #if sys.exc_info()[0]: for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(os.getcwd() + "/report/" + case_name + ".png") self.driver.save_screenshot(file_path) self.driver.close() ''' @ddt.data( ['234','test0007','111111','code','user_email_error','请输入有效的电子邮件地址'], ['@qq.com','test0007','111111','code','user_email_error','请输入有效的电子邮件地址'], ['*****@*****.**','test0007','111','code','user_email_error','请输入有效的电子邮件地址'] ) @ddt.unpack ''' @ddt.data(*data) def test_register_case(self, data): email, username, password, self.file_name, assertCode, assertText = data email_error = self.login.register_function(email, username, password, self.file_name, assertCode, assertText) self.assertFalse(email_error, "测试失败")
class FirstDdtCase(unittest.TestCase): file_name = "C://Users//邱步一//PycharmProjects//51test//Image//test001.png" # 邮箱、用户名、密码、验证码、错误信息定位元素、错误提示信息 def setUp(self): self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') self.login = RegisterBusiness(self.driver) def tearDown(self): time.sleep(2) #if sys.exc_info()[0]: for method_name,error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join(os.path.dirname(os.getcwd())+"/report/"+case_name+"error.png") print(file_path) self.driver.save_screenshot(file_path) #print("这个是case的后置调键1") self.driver.close() ''' @ddt.data( ['12','Mushishi01','111111','code','user_email_error','请输入有效的电子邮件地址'], ['@qq.com','Mushishi01','111111','code','user_email_error','请输入有效的电子邮件地址'], ['*****@*****.**','Mushishi01','111111','code','user_email_error','请输入有效的电子邮件地址'] ) @ddt.unpack ''' @ddt.data(*data) def test_register_case(self,data): email,username,password,self.file_name,assertCode,assertText = data print(self.file_name) email_error = self.login.register_function(email,username,password,"C://Users//邱步一//PycharmProjects//51test//Image//test001.png",assertCode,assertText) self.assertFalse(email_error,"测试失败")
class FirstDdtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get('http://www.5itest.cn/register') # self.logger.info("this is chrome") self.login = RegisterBusiness(self.driver) def tearDown(self): time.sleep(2) for method_name, error in self._outcome.errors: if error: case_name = self._testMethodName file_path = os.path.join("E:/pythonProject/SeleniumPython" + "/report/" + case_name + ".png") self.driver.save_screenshot(file_path) # print("这个是case的后置条件") self.driver.close() # @ddt.data( # ['123','gryufeng01','111111','code','user_email_error','请输入有效的电子邮件地址'], # ['@qq.com', 'gryufeng02', '111111', 'code', 'user_email_error', '请输入有效的电子邮件地址'], # ['*****@*****.**', 'gryufeng03', '111111', 'code', 'user_email_error', '请输入有效的电子邮件地址'] # ) # @ddt.unpack @ddt.data(*data) def test_register_case(self, data): email, username, password, code, assertCode, assertText = data email_error = self.login.register_function(email, username, password, code, assertCode, assertText) self.assertFalse(email_error, '测试失败')
class FirstDbtCase(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome(executable_path=driver_path) self.driver.get('http://www.5itest.cn/register') self.driver.maximize_window() self.login = RegisterBusiness(self.driver) def tearDown(self): # self.driver.save_screenshot() time.sleep(2) # sys.exc_info()[0]: for method_name, error in self._outcome.errors: if error: # caseの名前を取得 case_name = self._testMethodName file_path = os.path.abspath(os.path.join( os.getcwd(), "..")) + r"\report\%s.png" % case_name self.driver.save_screenshot(file_path) self.driver.close() # 'email', 'username', 'password', 'code', 'assertCode', 'assertText' # @ddt.data( # ['123', 'huasdasd01', '1111111', 'code', 'user_email_error', '请输入有效的电子邮件地址'], # ['*****@*****.**', 'huasdasd01', '1111111', 'code', 'user_email_error-error', '请输入有效的电子邮件地址'] # ) # @ddt.unpack # def test_register_case(self, email, username, password, code, assertCode, assertText): @ddt.data(*data) def test_register_case(self, data): email, username, password, code, assertCode, assertText = data email_error = self.login.register_function(email, username, password, code, assertCode, assertText) self.assertFalse(email_error, 'テスト失敗')