Пример #1
0
 def test04_login_noparams_username(self):
     response = self.login_api.login_parms(password="******")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("缺少用户名参数返回数据为:{}".format(jsonData))
     common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #2
0
 def test05_is_login(self):
     phone = '18123456789'
     pwd = 'admin123'
     self.login_reg.login(phone, pwd)
     r = self.login_reg.is_login()
     logging.info('获取判定登录状态response对象:{}'.format(r.text))
     common_assert(self, r, desc='OK')
Пример #3
0
 def test07_login_wrong_mobile(self):
     response = self.login_api.login("13806600002", "123456")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("用户名错误返回数据为:{}".format(jsonData))
     common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #4
0
 def test_view_order(self):
     """查看订单"""
     # 订单id
     order_id = 120
     # 收件人姓名
     exp_name = '小乔'
     # 收件人手机号
     exp_mobile = '13588888888'
     # 响应对象
     res = ApiFactory.get_order_api().query_order_api(order_id)
     # 打印 请求参数、请求地址、请求响应数据
     logging.info('请求地址:{}'.format(res.url))
     logging.info('请求响应:{}'.format(res.json()))
     # 断言响应状态码
     utils.common_assert(res)
     # 断言订单编号
     assert res.json().get('id') == order_id
     # 断言地址 用户名 和 手机号
     assert res.json().get('snap_address').get('name') == exp_name
     assert res.json().get('snap_address').get('mobile') == exp_mobile
     # 断言关键字
     assert False not in [
         i in res.text for i in [
             'order_no', 'total_price', 'snap_img', 'snap_name',
             'total_count'
         ]
     ]
Пример #5
0
 def test02_search_emp(self, status_code, success, code, message):
     #初始化数据
     #请求接口
     result = self.emp.search_emp(TestEmployee.emp_id)
     logging.info("查询:{}".format(result))
     #断言
     common_assert(self, result, status_code, success, code, message)
Пример #6
0
 def test01_set_account(self):
     r = self.recharge.set_account()
     print(r.text)
     common_assert(self, r, status_code=200, status=200, desc='form')
     h = GetData.get_html_data(r)
     r2 = self.session.post(url=h[0], data=h[1])
     common_assert(self, r2, status_code=200, status=None)
Пример #7
0
    def test_login(self, mobile, password, status_code, success, code,
                   message):
        logging.info(
            "param mobile={} password={} status_code={} success={} code={} message={}"
            .format(mobile, password, status_code, success, code, message))
        # 定义测试数据
        # mobile = "13800000002"
        # password = "******"

        response = self.login_api.login(mobile, password)
        result = response.json()
        logging.info("login response data={}".format(result))

        # 断言
        utils.common_assert(self, response, status_code, success, code,
                            message)
        # utils.common_assert(self, response)

        # self.assertEqual(200, response.status_code)
        # self.assertTrue(result.get("success"))
        # self.assertEqual(10000, result.get("code"))
        # self.assertIn("操作成功", result.get("message"))

        if success:
            # 获取token数据,并保存
            app.TOKEN = "Bearer " + result.get("data")
            app.headers_data["Authorization"] = app.TOKEN
            logging.info("token={}".format(app.TOKEN))
            logging.info("headers={}".format(app.headers_data))
Пример #8
0
 def test03_update_emp(self, username, status_code, success, code, message):
     #初始化数据
     #username = "******"
     #请求接口
     result = self.emp.update_emp(TestEmployee.emp_id, username)
     logging.info("修改:{}".format(result))
     #断言
     common_assert(self, result, status_code, success, code, message)
     # #导包
     # import pymysql
     # #创建数据库连接
     # conn = pymysql.connect("182.92.81.159","readuser","iHRM_user_2019","ihrm")
     # #创建游标
     # cursor = conn.cursor()
     # #执行操作
     # sql = "select username from bs_user where id = %s"
     # cursor.execute(sql,TestEmployee.emp_id)
     # one = cursor.fetchone()
     # logging.info("one:{}".format(one))
     # uname = one[0]
     # self.assertEqual(username,uname)
     # #关闭游标
     # cursor.close()
     # #关闭数据库连接
     # conn.close()
     sql = "select username from bs_user where id = %s"
     mysql = Mysql()
     one = mysql.get_one(sql, TestEmployee.emp_id)
     uname = one[0]
     self.assertEqual(username, uname)
Пример #9
0
 def test05_login_noparams_password(self):
     response = self.login_api.login_parms(mobile="13800000002")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("缺少密码参数返回数据为:{}".format(jsonData))
     common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #10
0
 def test08_login_no_password(self):
     response = self.login_api.login("13800000002", "122333")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("密码错误返回数据为:{}".format(jsonData))
     common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #11
0
 def test02_login_no_username(self):
     response = self.login_api.login("", "123456")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("用户名为空返回数据为:{}".format(jsonData))
     common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #12
0
    def test03_update_emp(self):
        # 测试数据
        emp_id = TestEmp.emp_id
        username = "******"

        # 调用接口
        response = self.emp_api.update_emp(emp_id, username)
        json_data = response.json()
        logging.info("json_data={}".format(json_data))

        # 断言
        utils.common_assert(self, response)

        # 校验数据库中的员工的用户名
        # 获取数据库连接
        conn = pymysql.connect("182.92.81.159", "readuser", "iHRM_user_2019", "ihrm")
        # 获取游标对象
        cursor = conn.cursor()
        # 执行查询操作
        sql = "SELECT t.id,t.username from bs_user t WHERE t.id={}".format(emp_id)
        cursor.execute(sql)
        db_data = cursor.fetchone()
        logging.info("db_data==={}".format(db_data))
        db_username = db_data[1]
        self.assertEqual(username, db_username)
        # 关闭游标对象
        cursor.close()
        # 关闭数据库连接
        conn.close()
Пример #13
0
    def test03_update_emp(self, username, status_code, success, code, message):
        # 测试数据
        emp_id = TestEmployee.employee_id
        # username = "******"

        # 调用接口
        response = self.employee_api.update_emp(emp_id, username)
        result = response.json()
        logging.info("update emp data={}".format(result))

        # 断言
        utils.common_assert(self, response, status_code, success, code,
                            message)

        # 数据库数据校验
        conn = pymysql.connect("182.92.81.159", "readuser", "iHRM_user_2019",
                               "ihrm")
        cursor = conn.cursor()
        sql = "select username from bs_user where id=%s"
        cursor.execute(sql, emp_id)
        data = cursor.fetchone()
        db_username = data[0]
        cursor.close()
        conn.close()
        self.assertEqual(username, db_username)
Пример #14
0
 def test09_login_add_parms(self):
     response = self.login_api.login_parms2({
         "mobile": "13800000002",
         "password": "******",
         "add": "7788"
     })
     logging.info("多参的返回数据:{}".format(response.json()))
     common_assert(self, response, 200, True, 10000, "操作成功!")
Пример #15
0
 def test06_login_no_password(self):
     response = self.login_api.login_parms(mobe="13800000002",
                                           password="******")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("参数错误返回的结果为:{}".format(jsonData))
     common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #16
0
 def test01_img_code(self, r, status_code):
     r1 = self.login_reg.get_img_code(r)
     logging.info('获取图片验证码response对象')
     try:
         common_assert(self, r1, status_code=status_code, status=None)
     except Exception as e:
         logging.error(e)
         raise
Пример #17
0
 def test01_login_success(self, ):
     # 发出请求
     response = self.login_api.login("13800000002", "123456")
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("登陆成功接口返回数据为:{}".format(jsonData))
     common_assert(self, response, 200, True, 10000, "操作成功!")
Пример #18
0
 def test03_login_no_password(self, case_data, mobile, password, http_code,
                              success, code, message):
     response = self.login_api.login(mobile, password)
     # 接收返回的json数据
     jsonData = response.json()
     # 调试输出登陆接口返回的数据
     logging.info("密码为空返回数据为:{}".format(jsonData))
     common_assert(self, response, http_code, success, code, message)
Пример #19
0
 def test02_recharge_code(self):
     r = self.recharge.get_charge_verify_code(random.random())
     logging.info('响应数据:{}'.format(r.text))
     try:
         common_assert(self, r, status=None)
     except Exception as e:
         logging.error(e)
         raise
Пример #20
0
 def test_password_is_error(self):
     #初始化数据
     username = "******"
     password = "******"
     #请求接口
     result = self.login.login(username, password)
     logging.info(result)
     #断言
     common_assert(self, result, 200, False, 20001, "用户名或密码错误")
Пример #21
0
 def test_params_is_null(self):
     #初始化数据
     username = None
     password = None
     #请求接口
     result = self.login.login(username, password)
     logging.info(result)
     #断言
     common_assert(self, result, 200, False, 99999, "系统繁忙")
Пример #22
0
 def test_username_is_null(self):
     #初始化数据
     username = ""
     password = "******"
     #请求接口
     result = self.login.login(username, password)
     logging.info(result)
     #断言
     common_assert(self, result, 200, False, 20001, "用户名或密码错误")
Пример #23
0
 def test02_get_emp(self):
     # 测试数据
     emp_id = TestEmp.emp_id
     # 调用接口
     response = self.emp_api.get_emp(emp_id)
     json_data = response.json()
     logging.info("test_get_emp json_data={}".format(json_data))
     # 断言
     utils.common_assert(self, response)
Пример #24
0
 def test03_add_emp(self):
     mobile = "179"+time.strftime("%d%H%M%S")
     name ="rose"+time.strftime("%d%H%M%S")
     response_add_emp = self.emp_api.add_emp(name, mobile, app.HEADERS)
     logging.info("添加员工的结果是:{}".format(response_add_emp.json()))
     emp_id =response_add_emp.json().get("data").get("id")
     app.EMP_ID =emp_id
     logging.info("添加员工的id是{}".format(app.EMP_ID))
     common_assert(self,response_add_emp,200,True,10000,"操作成功")
Пример #25
0
 def test_token_verify(self):
     """token验证"""
     # 获取返回数据
     res = ApiFactory.get_user_api().verify_token_api()
     # 打印 请求参数、请求地址、请求响应数据
     logging.info('请求地址:{}'.format(res.url))
     logging.info('请求响应:{}'.format(res.json()))
     # 断言响应状态码
     utils.common_assert(res)
     # 断言 isValid为true
     assert res.json().get('isValid') is True
Пример #26
0
    def test_login_pwd_is_empty(self):
        # 定义测试数据
        mobile = "13800000002"
        password = ""

        response = self.login_api.login(mobile, password)
        result = response.json()
        logging.info("login response data={}".format(result))

        # 断言
        utils.common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #27
0
    def test05_modify_emp(self):
        response_modify_emp = self.emp_api.modify_emp(app.EMP_ID,"happy",app.HEADERS)
        logging.info("修改员工的结果为:{}".format(response_modify_emp.json()))
        common_assert(self,response_modify_emp,200,True,10000,"操作成功")

        with DBUtils() as db:
            sql = 'select username from bs_user where id ={}'.format(app.EMP_ID)
            db.execute(sql)
            result = db.fetchone()
            self.assertEqual("happy", result[0])
            logging.info("数据库查询结果为:{}".format(result[0]))
Пример #28
0
    def test_login_username_is_not_exist(self):
        # 定义测试数据
        mobile = "13888889999"
        password = "******"

        response = self.login_api.login(mobile, password)
        result = response.json()
        logging.info("login response data={}".format(result))

        # 断言
        utils.common_assert(self, response, 200, False, 20001, "用户名或密码错误")
Пример #29
0
    def test01_add_emp(self, username, mobile, work_number, status_code,
                       success, code, message):
        #初始化数据
        #请求接口
        result = self.emp.add_emp(username, mobile, work_number)
        logging.info("新增:{}".format(result))
        #断言
        common_assert(self, result, status_code, success, code, message)

        #获取员工id
        TestEmployee.emp_id = result.get('data').get('id')
Пример #30
0
 def test02_login_success(self):
     response_login = self.emp_api.login("13800000002", "123456")
     logging.info("员工模块的登陆结果为:{}".format(response_login.json()))
     token = "Bearer " + response_login.json().get("data")
     # 得到请求头数据
     # global headers # 把局部变量变成全局变量,但是其他文件也需要调用,只能配置到app.py里
     headers = {"Content-Type": "application/json", "Authorization": token}
     app.HEADERS = headers
     logging.info("取出的令牌为:{}".format(token))
     logging.info("请求头为:{}".format(headers))
     common_assert(self, response_login, 200, True, 10000, "操作成功")