def test_auth(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 获取订单号
     num = Res.Result(self.driver).back_val("order_number")
     # 获取支付 ID
     pay_id = Res.Result(self.driver).back_val("payment_id")
     # 断言:交易状态
     res_dict = test_data["PayResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_val(key_val),
                          "交易状态错误")
     # 进入预授权
     Home(self.driver).enter_postpage("预授权")
     auth.Action(self.driver).auth(test_data["Auth"], pay_id, num)
     # 断言:预授权成功
     res_dict = test_data["AuthResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val),
                          "预授权操作失败")
Пример #2
0
 def test_counterfeit(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 断言: 判断三方支付成功
     res_dict = test_data["PayResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_val(key_val))
     # 获取支付 ID
     pay_id = Res.Result(self.driver).back_val("payment_id")
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 新增伪冒
     Rm.Action(self.driver).query_pay_id(pay_id)
     Rm.Action(self.driver).create(pay_id, "卡片不出现(账户卡号被冒用)")
     # 断言: 查询状态为伪冒状态
     Rm.Action(self.driver).query_pay_id(pay_id)
     status = Rm.Action(self.driver).get_counterfeit("伪冒状态")
     self.assertEqual("是", status)
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 断言: 状态为伪冒且标签颜色显示为绿色
     Cou.Action(self.driver).query_pay_id(pay_id)
     status_color = Cou.Action(self.driver).get_status_color(pay_id, "伪冒")
     self.assertEqual("#03b64f", status_color)
Пример #3
0
 def test_threequick(self, test_data):
     # 进入 quick 3方
     Home(self.driver).enter_postpage("quick3方")
     # 创建订单
     Tq.Action(self.driver).put_create(test_data["ThreeQuick"],
                                       test_data["PayDomain"], self.payval)
     # 获取 quickpay_id
     quick_id = Res.Result(self.driver).back_val("quickpay_id")
     # 进入 quick 3方
     Home(self.driver).enter_postpage("quick3方")
     # 支付订单
     Tq.Action(self.driver).put_pay(test_data["ThreeQuick"], quick_id)
     # 断言:quick 3方交易成功
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_check(key_val))
Пример #4
0
 def test_check(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 获取订单号
     num = Res.Result(self.driver).back_val("order_number")
     # 进入对账接口测试页面
     Home(self.driver).enter_postpage("对账")
     # 对账操作
     Che.Action(self.driver).put_check(test_data["AutoCheck"], num)
     # 断言:测试结果与预期结果对比
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
Пример #5
0
 def test_two(self, test_data):
     # 进入 2方信用卡
     Home(self.driver).enter_postpage("2方信用卡")
     # 提交 2方支付
     Twp.Action(self.driver).put_two(test_data["TestData"])
     # 断言:2方信用卡交易成功
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
Пример #6
0
 def test_moto(self, test_data):
     # 进入 moto
     Home(self.driver).enter_postpage("MOTO")
     # moto 测试
     Mo.Action(self.driver).moto(test_data["TestData"])
     # 断言:MoTo 交易成功
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
Пример #7
0
 def test_track(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 获取支付 ID
     pay_id = Res.Result(self.driver).back_val("payment_id")
     # 进入物流上传测试页面
     Home(self.driver).enter_postpage("物流上传")
     # 物流上传操作
     Che.Action(self.driver).put_track(test_data["Track"], pay_id)
     log.info("物流上传结果 signValue:{}".format(
         Res.Result(self.driver).back_tag_val("signValue")))
     # 断言:测试结果与预期结果对比
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
Пример #8
0
 def test_threepay(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 断言:3方信用卡交易成功
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_val(key_val))
Пример #9
0
 def test_refund(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 获取金额
     # amount = Res.Result(self.driver).back_val("order_amount")
     # 获取支付 ID
     pay_id = Res.Result(self.driver).back_val("payment_id")
     # 进入退款申请测试页面
     Home(self.driver).enter_postpage("退款申请")
     # 申请退款操作
     Che.Action(self.driver).apply_refund(test_data["ApplyRefund"], pay_id)
     # 获取退款ID
     refund_id = Res.Result(self.driver).back_tag_val("refund_id")
     log.info("退款ID:{}".format(refund_id))
     # 断言:退款成功
     res_dict = test_data["ApplyResult"]
     for key_val in res_dict:
         return_val = Res.Result(self.driver).back_tag_val(key_val)
         self.assertEqual(res_dict[key_val], return_val)
         if key_val == "refund_description":
             log.info("申请退款结果描述:{}".format(return_val))
     # 进入退款查询测试页面
     Home(self.driver).enter_postpage("退款查询")
     # 查询退款操作
     try:
         Che.Action(self.driver).query_refund(test_data["QueryRefund"],
                                              refund_id)
     except TypeError:
         log.error("退款ID为空")
     log.info("查询退款结果描述:{}".format(
         Res.Result(self.driver).back_tag_val("refund_description")))
     # 断言:测试结果与预期结果对比
     res_dict = test_data["QueryResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
Пример #10
0
 def test_freeze(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(
         test_data["ThreePay"], test_data["PayDomain"],
         self.payval)
     # 断言: 判断三方支付成功
     res_dict = test_data["PayResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val], Res.Result(self.driver).back_val(key_val))
     # 获取支付 ID
     pay_id = Res.Result(self.driver).back_val("payment_id")
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 申请调单
     Aa.Action(self.driver).apply_freeze(
         pay_id, "系统后台操作人员",
         "调单", test_data["Freeze"]["amount"]
     )
     # 审核
     Aq.Action(self.driver).query_abn_type(pay_id, "调单")
     Aq.Action(self.driver).review()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "调单")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功未处理", abn_status)
     # 更换账号, 登录管理后台
     Ash(self.driver).login(self.as_tname, self.as_tpwd)
     Ash(self.driver).abn_apply()
     # 复核
     Aq.Action(self.driver).query_abn_type(pay_id, "调单")
     Aq.Action(self.driver).verify()
     # 断言: 判断复核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "调单")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功已处理", abn_status)
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 接受退款
     Fre.Action(self.driver).accept_refund(pay_id)
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 断言: 判断调单成功
     Aq.Action(self.driver).query_abn_type(pay_id, "退款")
     refund_reason = Aq.Action(self.driver).get_query_result("异常原因")
     self.assertEqual("调单变退款", refund_reason)
     Aq.Action(self.driver).query_abn_type(pay_id, "调单取消")
     cancel_reason = Aq.Action(self.driver).get_query_result("异常原因")
     self.assertEqual("调单变退款", cancel_reason)
Пример #11
0
 def test_twoquick(self, test_data):
     # 进入 quick 2方
     Home(self.driver).enter_postpage("quick2方")
     # 创建订单
     Twq.Action(self.driver).put_create(test_data["TestData"])
     # 获取 quickpay_id
     quick_id = Res.Result(self.driver).back_tag_val("quickpay_id")
     self.driver.back()
     # 支付订单
     Twq.Action(self.driver).put_pay(test_data["TestData"], quick_id)
     # 断言:quick 2方交易成功
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
Пример #12
0
 def test_send_trade(self, test_data):
     # 进入创建订单接口
     Home(self.driver).enter_postpage("创建订单接口")
     # 创建订单
     St.Action(self.driver).create_trade(test_data["ThreePay"])
     # 断言:创建订单成功
     res_dict = test_data["CreateResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_tag_val(key_val))
     pay_url = Res.Result(self.driver).back_tag_val("pay_url")
     # 支付订单
     St.Action(self.driver).pay_trade(test_data["PayDomain"], pay_url,
                                      self.payval)
     # 断言:创建订单支付成功
     res_dict = test_data["TestResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_val(key_val))
Пример #13
0
 def test_refund(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 断言: 判断三方支付成功
     res_dict = test_data["PayResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_val(key_val))
     pay_id = Res.Result(self.driver).back_val("payment_id")
     order_num = Res.Result(self.driver).back_val("order_number")
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 申请退款
     Ra.Action(self.driver).apply_refund(order_num, pay_id,
                                         test_data["ThreePay"]["交易金额"],
                                         test_data["Refund"]["amount"])
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 审核
     Aq.Action(self.driver).query_abn_type(pay_id, "退款")
     Aq.Action(self.driver).review()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "退款")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功未处理", abn_status)
     # 更换账号, 登录管理后台
     Ash(self.driver).login(self.as_tname, self.as_tpwd)
     Ash(self.driver).abn_apply()
     # 复核
     Aq.Action(self.driver).query_abn_type(pay_id, "退款")
     Aq.Action(self.driver).verify()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "退款")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功已处理", abn_status)
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 断言: 判断退款处理状态
     handle_status = Rq.Action(self.driver).query_status(pay_id).strip()
     self.assertEqual("成功", handle_status)
Пример #14
0
 def test_protest(self, test_data):
     # 进入 3方信用卡
     Home(self.driver).enter_postpage("3方信用卡")
     # 提交 3方支付
     Tp.Action(self.driver).put_three(test_data["ThreePay"],
                                      test_data["PayDomain"], self.payval)
     # 断言: 判断三方支付成功
     res_dict = test_data["PayResult"]
     for key_val in res_dict:
         self.assertEqual(res_dict[key_val],
                          Res.Result(self.driver).back_val(key_val))
     pay_id = Res.Result(self.driver).back_val("payment_id")
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 申请拒付
     Aa.Action(self.driver).apply_protest(pay_id, "系统后台操作人员", "拒付",
                                          test_data["Protest"]["amount"],
                                          "重复处理")
     # 审核
     Aq.Action(self.driver).query_abn_type(pay_id, "拒付")
     Aq.Action(self.driver).review()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "拒付")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功未处理", abn_status)
     # 更换账号, 登录管理后台
     Ash(self.driver).login(self.as_tname, self.as_tpwd)
     Ash(self.driver).abn_apply()
     # 复核
     Aq.Action(self.driver).query_abn_type(pay_id, "拒付")
     Aq.Action(self.driver).verify()
     # 断言: 判断复核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "拒付")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功已处理", abn_status)
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 拒付申诉
     Pt.Action(self.driver).appeal_protest(pay_id, "autotest",
                                           test_data["Protest"]["action"])
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 审核
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉中")
     Aq.Action(self.driver).review()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉中")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功未处理", abn_status)
     # 更换账号, 登录管理后台
     Ash(self.driver).login(self.as_tname, self.as_tpwd)
     Ash(self.driver).abn_apply()
     # 复核
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉中")
     Aq.Action(self.driver).verify()
     # 断言: 判断复核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉中")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功已处理", abn_status)
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 断言: 判断状态标签颜色显示为绿色
     status_color = Pt.Action(self.driver).get_status_color(pay_id, "已申诉")
     self.assertEqual("#03b64f", status_color)
     # 登录管理后台
     Ash(self.driver).login(self.as_name, self.as_pwd)
     # 申请申诉成功
     Aa.Action(self.driver).apply_appeal_success(pay_id, "系统后台操作人员", "申诉成功")
     # 审核
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉成功")
     Aq.Action(self.driver).review()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉成功")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功未处理", abn_status)
     # 更换账号, 登录管理后台
     Ash(self.driver).login(self.as_tname, self.as_tpwd)
     Ash(self.driver).abn_apply()
     # 复核
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉成功")
     Aq.Action(self.driver).verify()
     # 断言: 判断审核状态
     Aq.Action(self.driver).query_abn_type(pay_id, "申诉成功")
     abn_status = Aq.Action(self.driver).get_query_result("审核状态")
     self.assertEqual("审核成功已处理", abn_status)
     # 登录账户后台
     Nmh(self.driver).login(self.nm_account, self.nm_name, self.nm_pwd)
     # 断言: 判断状态标签颜色改为绿色
     status_color = Pt.Action(self.driver).get_status_color(pay_id, "申诉成功")
     self.assertEqual("#03b64f", status_color)