예제 #1
0
 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)
예제 #2
0
 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)
예제 #3
0
 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)
예제 #4
0
 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)
예제 #5
0
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'
예제 #7
0
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)
예제 #8
0
    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)
예제 #9
0
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)
예제 #10
0
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')
예제 #11
0
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)
예제 #12
0
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执行了')
예제 #13
0
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)
예제 #14
0
    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)
예제 #15
0
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
예제 #16
0
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)
예제 #17
0
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)
예제 #18
0
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执行'
예제 #19
0
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
예제 #20
0
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执行成功")
예제 #21
0
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, "测试失败")
예제 #22
0
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执行")
예제 #23
0
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, "测试失败")
예제 #24
0
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
예제 #25
0
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, '测试失败')
예제 #26
0
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, "测试失败")
예제 #28
0
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,"测试失败")
예제 #29
0
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, '测试失败')
예제 #30
0
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, 'テスト失敗')