Пример #1
0
 def setUp(self):
     self.driver = driverbase.open_broswer()
     driverbase.max_window()
     self.driver.implicitly_wait(10)
     self.add = Add_company(self.driver)
     self.login = Login(self.driver)
     self.toast = ToastText(self.driver)
 def save_cookie(self, phone, psw, url):
     self.login = Login(self.driver)
     self.login.psw_login(phone, psw, url)
     login_cookie = self.get_login_cookie()
     yamlpath = os.path.abspath(
         os.path.dirname(__file__)) + '\login_cookie.yaml'
     cookie_value = login_cookie
     with open(yamlpath, 'w', encoding='utf-8') as f:
         yaml.dump(cookie_value, f, Dumper=yaml.RoundTripDumper)
     sleep(3)
class Cookie(BasePage):
    # def __init__(self):
    #     self.driverBase = DriverBase()
    #     self.driver = self.driverBase.open_broswer()    # 构造方法中写打开浏览器,会导致没调用一个方法时,都会多打开一次浏览器
    #     self.login = Login(self.driver)
    # 封装元素操作方法
    def save_cookie(self, phone, psw, url):
        self.login = Login(self.driver)
        self.login.psw_login(phone, psw, url)
        login_cookie = self.get_login_cookie()
        yamlpath = os.path.abspath(
            os.path.dirname(__file__)) + '\login_cookie.yaml'
        cookie_value = login_cookie
        with open(yamlpath, 'w', encoding='utf-8') as f:
            yaml.dump(cookie_value, f, Dumper=yaml.RoundTripDumper)
        sleep(3)
        # self.quit_driver()               # 加上这一句,同时执行sage_cookie、keep_login时,会报  由于目标计算机积极拒绝,无法连接  的错误
        # self.driverBase.quit_broswer()
        # self.driver.delete_cookie(name = 'laravel_session')
        # self.driver.refresh()
    def get_cookie(self, yamlName="login_cookie.yaml"):
        # self.save_cookie(phone,psw,url)
        f = os.path.abspath(os.path.dirname(__file__))
        p = f + '\login_cookie.yaml'
        f = open(p)
        value = f.read()
        cookie_all = yaml.load(value)
        cookie_name = cookie_all['name']
        cookie_value = cookie_all['value']
        cookie_data_dict = {'name': cookie_name, 'value': cookie_value}
        # print(cookie_data_dict)
        return cookie_data_dict

    def keep_login(self, url):
        cookieData = self.get_cookie()
        self.open_url(url)
        self.add_cookie(cookieData)
        self.open_url(url)
        self.driver.implicitly_wait(10)
Пример #4
0
class AddCompany(unittest.TestCase):
    def setUp(self):
        self.driver = driverbase.open_broswer()
        driverbase.max_window()
        self.driver.implicitly_wait(10)
        self.add = Add_company(self.driver)
        self.login = Login(self.driver)
        self.toast = ToastText(self.driver)

    def tearDown(self):
        driverbase.quit_broswer()

    # 公司名为空
    def test_add_nullname(self):
        self.add.save_login_cookie(readconfig.inputPhone_cookie,
                                   readconfig.inputPsw_cookie,
                                   readconfig.url_login)  # 登录一次,后面的不用再次登录
        self.add.add_company(companyName[0]['name'], readconfig.url_admin)
        self.assertEqual(self.toast.page_toast(),
                         companyName[0]['except_result'])

    # 添加公司,默认行业
    def test_default_vocation(self):
        self.add.add_company(companyName[1]['name'], readconfig.url_admin)
        self.assertEqual(self.add.companyName(),
                         companyName[1]['except_result'])

    # 添加公司,选择教育培训行业
    def test_select_education(self):
        self.add.add_company_education(companyName[2]['name'],
                                       readconfig.url_admin)
        self.assertEqual(self.add.companyName(),
                         companyName[2]['except_result'])

    #添加公司,选择水利水电行业
    def test_select_waterboard(self):
        self.add.add_company_waterboard(companyName[3]['name'],
                                        readconfig.url_admin)
        self.assertEqual(self.add.companyName(),
                         companyName[3]['except_result'])

    #添加已存在的公司
    def test_exist_company(self):
        self.add.add_company_education(companyName[4]['name'],
                                       readconfig.url_admin)
        self.assertEqual(self.toast.sever_toast(),
                         companyName[4]['except_result'])

    # 添加已被认证的公司
    def test_attestation_company(self):
        self.add.add_company_education(companyName[5]['name'],
                                       readconfig.url_admin)
        self.assertEqual(self.toast.sever_toast(),
                         companyName[5]['except_result'])

    # 新账号首次添加公司
    def test_first_addcompany(self):
        self.login.psw_login(logindata[0]['phone'], logindata[0]['psw'],
                             readconfig.url_login)
        self.add.first_login()
        self.add.add_companyName(companyName[7]['name'])
        self.add.add_company_verify()
        self.assertEqual(self.add.companyName(),
                         companyName[7]['except_result'])


# if __name__ == '__main__':
#     suite = unittest.TestSuite()
#     suite.addTest(AddCompany('test_add_nullname'))
#     suite.addTest(AddCompany('test_default_vocation'))
#     suite.addTest(AddCompany('test_select_education'))
#     suite.addTest(AddCompany('test_select_waterboard'))
#     suite.addTest(AddCompany('test_exist_company'))
#     suite.addTest((AddCompany('test_exist_company')))
#     suite.addTest((AddCompany('test_first_addcompany')))
#     unittest.TextTestRunner().run(suite)
Пример #5
0
class Test_code_login(unittest.TestCase):
    def setUp(self):
        self.driver = driverBase.open_broswer()
        driverBase.max_window()
        self.login = Login(self.driver)
        self.driver.implicitly_wait(10)
        self.toast = ToastText(self.driver)

    def tearDown(self):
        driverBase.quit_broswer()

    def test_code_login_success(self):
        '''账号验证码正确登录'''
        self.login.send_code_login(url, logindata[0]['phone'])
        codes = self.login.get_code(sqldata[4]['set or search'],
                                    sqldata[4]['table'], sqldata[4]['where'])
        self.login.code_login(codes[0])
        self.assertEqual(self.login.login_success_username(),
                         logindata[0]['except_result'])

    def test_code_login_nullcode(self):
        '''账号正确,验证码为空登录'''
        self.login.send_code_login(url, logindata[1]['phone'])
        self.login.code_login(code='')
        self.assertEqual(self.toast.page_toast(),
                         logindata[1]['except_result'])

    def test_code_login_allnull(self):
        '''账号、验证码为空'''
        self.login.send_code_login(url, logindata[2]['phone'])
        self.assertEqual(self.toast.page_toast(),
                         logindata[2]['except_result'])

    def test_code_login_mismatch(self):
        '''账号和验证码不匹配'''
        self.login.send_code_login(url, logindata[3]['phone'])
        codes = self.login.get_code(sqldata[4]['set or search'],
                                    sqldata[4]['table'], sqldata[4]['where'])
        self.login.code_login(codes[1])
        self.assertEqual(self.toast.sever_toast(),
                         logindata[3]['except_result'])

    def test_code_login_newphone(self):
        '''系统中不存在的账号,验证码登录成功'''
        self.login.send_code_login(url, logindata[4]['phone'])
        codes = self.login.get_code(sqldata[4]['set or search'],
                                    sqldata[4]['table'], sqldata[4]['where'])
        self.login.code_login(codes[0])
        self.assertEqual(self.login.login_success_username(),
                         logindata[4]['except_result'])
Пример #6
0
class Test_register(unittest.TestCase):
    def setUp(self):
        self.driver = driverBase.open_broswer()
        driverBase.max_window()
        self.login = Login(self.driver)
        self.addcompany = Add_company(self.driver)
        self.driver.implicitly_wait(10)
        self.toast = ToastText(self.driver)

    def tearDown(self):
        driverBase.quit_broswer()

    # 注册成功
    def test_register_success(self):
        '''注册成功,进入添加公司页面'''
        self.login.send_code_register_heard(url, register_data[0]['phone'],
                                            register_data[0]['psw'],
                                            register_data[0]['name'])
        codes = self.login.get_code(sqldata[6]['set or search'],
                                    sqldata[6]['table'], sqldata[6]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.login.register_success(),
                         register_data[0]['except_result'])

    # 已存在手机号
    def test_exist_phone(self):
        '''手机号码已经注册'''
        self.login.send_code_register_heard(url, register_data[1]['phone'],
                                            register_data[1]['psw'],
                                            register_data[1]['name'])
        self.assertEqual(self.toast.page_toast(),
                         register_data[1]['except_result'])

    # 密码为空
    def test_empty_psw(self):
        '''请输入密码'''
        self.login.send_code_register_heard(url, register_data[2]['phone'],
                                            register_data[2]['psw'],
                                            register_data[2]['name'])
        codes = self.login.get_code(sqldata[7]['set or search'],
                                    sqldata[7]['table'], sqldata[7]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[2]['except_result'])

    # 姓名为空
    def test_empty_name(self):
        '''请输入姓名'''
        self.login.send_code_register_loginpage(url, register_data[3]['phone'],
                                                register_data[3]['psw'],
                                                register_data[3]['name'])
        codes = self.login.get_code(sqldata[7]['set or search'],
                                    sqldata[7]['table'], sqldata[7]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[3]['except_result'])

    # 手机号为空
    def test_empty_phone(self):
        '''请输入手机号'''
        self.login.send_code_register_loginpage(url, register_data[4]['phone'],
                                                register_data[4]['psw'],
                                                register_data[4]['name'])
        codes = self.login.get_code(sqldata[7]['set or search'],
                                    sqldata[7]['table'], sqldata[7]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[4]['except_result'])

    # 不符合规则的手机号
    def test_incongruent_phone(self):
        '''请输入正确的手机号'''
        self.login.send_code_register_loginpage(url, register_data[5]['phone'],
                                                register_data[5]['psw'],
                                                register_data[5]['name'])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[5]['except_result'])

    # 6位全英文密码
    def test_incongruent_psw(self):
        '''请输入6-16位字母数字组合的密码'''
        self.login.send_code_register_loginpage(url, register_data[6]['phone'],
                                                register_data[6]['psw'],
                                                register_data[6]['name'])
        codes = self.login.get_code(sqldata[8]['set or search'],
                                    sqldata[8]['table'], sqldata[8]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[6]['except_result'])

    # 6位全数字的密码
    def test_allnumber_psw(self):
        '''请输入6-16位字母数字组合的密码'''
        self.login.send_code_register_loginpage(url, register_data[7]['phone'],
                                                register_data[7]['psw'],
                                                register_data[7]['name'])
        codes = self.login.get_code(sqldata[8]['set or search'],
                                    sqldata[8]['table'], sqldata[8]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[7]['except_result'])

    # 小于6位的密码
    def test_less_psw(self):
        '''请输入6-16位字母数字组合的密码'''
        self.login.send_code_register_loginpage(url, register_data[8]['phone'],
                                                register_data[8]['psw'],
                                                register_data[8]['name'])
        codes = self.login.get_code(sqldata[8]['set or search'],
                                    sqldata[8]['table'], sqldata[8]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[8]['except_result'])

    # 验证码与手机号不匹配
    def test_mismatch(self):
        '''验证码错误'''
        self.login.send_code_register_loginpage(url, register_data[9]['phone'],
                                                register_data[9]['psw'],
                                                register_data[9]['name'])
        codes = self.login.get_code(sqldata[9]['set or search'],
                                    sqldata[9]['table'], sqldata[9]['where'])
        self.login.wirte_code_register(codes[1])
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[9]['except_result'])

    # 验证码为空
    def test_empty_code(self):
        '''请输入验证码'''
        self.login.send_code_register_loginpage(url,
                                                register_data[10]['phone'],
                                                register_data[10]['psw'],
                                                register_data[10]['name'])
        self.login.wirte_code_register(code='')
        self.login.select_deal()
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[10]['except_result'])

    # 所有数据都为空
    def test_all_empty(self):
        '''请输入手机号'''
        self.login.send_code_register_loginpage(url,
                                                register_data[11]['phone'],
                                                register_data[11]['psw'],
                                                register_data[11]['name'])
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[11]['except_result'])

    # 不勾选服务协议
    def test_ignore_deal(self):
        '''请阅读服务协议并勾选'''
        self.login.send_code_register_loginpage(url,
                                                register_data[12]['phone'],
                                                register_data[12]['psw'],
                                                register_data[12]['name'])
        codes = self.login.get_code(sqldata[9]['set or search'],
                                    sqldata[9]['table'], sqldata[9]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.register()
        self.assertEqual(self.toast.page_toast(),
                         register_data[12]['except_result'])

    # 注册成功后添加公司
    def test_register_addcompany(self):
        '''注册成功,添加公司'''
        self.login.send_code_register_loginpage(url,
                                                register_data[13]['phone'],
                                                register_data[13]['psw'],
                                                register_data[13]['name'])
        codes = self.login.get_code(sqldata[10]['set or search'],
                                    sqldata[10]['table'], sqldata[10]['where'])
        self.login.wirte_code_register(codes[0])
        self.login.select_deal()
        self.login.register()
        self.addcompany.add_companyName(companydata[6]['name'])
        self.addcompany.add_company_verify()
        self.assertEqual(self.addcompany.companyName(),
                         companydata[6]['except_result'])
Пример #7
0
 def setUp(self):
     self.driver = driverBase.open_broswer()
     driverBase.max_window()
     self.login = Login(self.driver)
     self.driver.implicitly_wait(30)
     self.toast = ToastText(self.driver)
Пример #8
0
class Reset_password(unittest.TestCase):
    def setUp(self):
        self.driver = driverBase.open_broswer()
        driverBase.max_window()
        self.login = Login(self.driver)
        self.driver.implicitly_wait(30)
        self.toast = ToastText(self.driver)
    def tearDown(self):
        driverBase.quit_broswer()
    # 修改密码成功
    def reset_success(self):
        '''密码修改成功'''
        self.login.send_code_reset(url,resetdata[0]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'],sqldata[3]['table'],sqldata[3]['where'])
        self.login.psw_reset(codes[0],resetdata[0]['psw'])
        self.assertEqual(self.toast.sever_toast(),resetdata[0]['except_result'])
    # 手机号为空
    def reset_empty_phone(self):
        '''请输入手机号'''
        self.login.send_code_reset(url,resetdata[1]['phone'])
        self.assertEqual(self.toast.page_toast(),resetdata[1]['except_result'])
    # 错误的验证码
    def error_code(self):
        '''验证码错误'''
        self.login.send_code_reset(url,resetdata[2]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'], sqldata[3]['table'], sqldata[3]['where'])
        self.login.psw_reset(codes[1], resetdata[2]['psw'])
        self.assertEqual(self.toast.sever_toast(), resetdata[2]['except_result'])
    # 新密码为全数字
    def error_new_psw(self):
        '''密码为全数字'''
        self.login.send_code_reset(url,resetdata[3]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'], sqldata[3]['table'], sqldata[3]['where'])
        self.login.psw_reset(codes[0], resetdata[3]['psw'])
        self.assertEqual(self.toast.sever_toast(), resetdata[3]['except_result'])
    # 新密码为全英文
    def new_psw_error(self):
        '''密码为全英文'''
        self.login.send_code_reset(url,resetdata[4]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'], sqldata[3]['table'], sqldata[3]['where'])
        self.login.psw_reset(codes[0], resetdata[4]['psw'])
        self.assertEqual(self.toast.sever_toast(), resetdata[4]['except_result'])
    # 新密码小于6位
    def less_new_psw(self):
        '''密码少于6位数'''
        self.login.send_code_reset(url,resetdata[5]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'], sqldata[3]['table'], sqldata[3]['where'])
        self.login.psw_reset(codes[0], resetdata[5]['psw'])
        self.assertEqual(self.toast.sever_toast(), resetdata[5]['except_result'])
    # 密码为空
    def empty_psw(self):
        '''请输入密码'''
        self.login.send_code_reset(url,resetdata[6]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'], sqldata[3]['table'], sqldata[3]['where'])
        self.login.psw_reset(codes[0],resetdata[6]['psw'])
        self.assertEqual(self.toast.page_toast(), resetdata[6]['except_result'])
    # 修改密码成功后,登录
    def reset_login(self):
        '''修改密码成功后,登录'''
        self.login.send_code_reset(url, resetdata[7]['phone'])
        codes = self.login.get_code(sqldata[3]['set or search'], sqldata[3]['table'], sqldata[3]['where'])
        self.login.psw_reset(codes[0], resetdata[7]['psw'])
        self.login.login_psw(logindata[5]['psw'])
        self.login.login_button()
        self.assertEqual(self.login.login_success_username(),logindata[5]['except_result'])
# if __name__ == '__main__':
    # suite = unittest.TestSuite()
    # suite.addTest(Reset_password('reset_success'))
    # suite.addTest(Reset_password('reset_empty_phone'))
    # suite.addTest(Reset_password('error_code'))
    # suite.addTest(Reset_password('error_new_psw'))
    # suite.addTest(Reset_password('new_psw_error'))
    # suite.addTest(Reset_password('less_new_psw'))
    # suite.addTest(Reset_password('empty_psw'))
    # suite.addTest(Reset_password('reset_login'))
    # unittest.TextTestRunner().run(suite)
class Test_psw_login(unittest.TestCase):
    def setUp(self):
        self.driver = driverBase.open_broswer()
        driverBase.max_window()
        self.login = Login(self.driver)
        self.driver.implicitly_wait(10)
        self.toast = ToastText(self.driver)

    def tearDown(self):
        driverBase.quit_broswer()

    def test_login(self):
        '''账号密码正确登录'''
        # login = Login(self.driver)
        self.login.psw_login(logindata[0]['phone'], logindata[0]['psw'], url)
        self.assertEqual(self.login.login_success_username(),
                         logindata[0]['except_result'])

    def test_login_nullpsw(self):
        '''账号正确,密码为空登录'''
        self.login.psw_login(logindata[1]['phone'], logindata[1]['psw'], url)
        self.assertEqual(self.toast.page_toast(),
                         logindata[1]['except_result'])

    def test_login_nullphone(self):
        '''账号为空,密码正确'''
        self.login.psw_login(logindata[2]['phone'], logindata[2]['psw'], url)
        self.assertEqual(self.toast.page_toast(),
                         logindata[2]['except_result'])

    def test_login_allnull(self):
        '''账号和密码都为空'''
        self.login.psw_login(logindata[3]['phone'], logindata[3]['psw'], url)
        self.assertEqual(self.toast.page_toast(),
                         logindata[3]['except_result'])

    def test_login_mismatch(self):
        '''账号和密码不匹配'''
        self.login.psw_login(logindata[4]['phone'], logindata[4]['psw'], url)
        self.assertEqual(self.toast.sever_toast(),
                         logindata[4]['except_result'])