def test43_joinbuy_closure_sort(self): """43 (封闭式排序)交易周期""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy20_stage_closure( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select period from base_project WHERE trade_id=" + trade_id period1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select period from base_project WHERE trade_id=" + trade_id period2 = getdata(sql) self.assertTrue(period1 >= period2, msg="按交易周期排序错误") po.joinbuy20_stage_closure( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select period from base_project WHERE trade_id=" + trade_id period1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select period from base_project WHERE trade_id=" + trade_id period2 = getdata(sql) self.assertTrue(period1 <= period2, msg="按交易周期排序错误")
def test33_joinbuy_closure_sort(self): """33 (开放式排序)交易周期""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy20_stage_closure( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select stage_closure from opening_project WHERE trade_id=" + trade_id closure1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select stage_closure from opening_project WHERE trade_id=" + trade_id closure2 = getdata(sql) self.assertTrue(closure1 >= closure2, msg="按交易周期排序无效") po.joinbuy20_stage_closure( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select stage_closure from opening_project WHERE trade_id=" + trade_id closure1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select stage_closure from opening_project WHERE trade_id=" + trade_id closure2 = getdata(sql) self.assertTrue(closure1 <= closure2, msg="按交易周期排序无效")
def test46_joinbuy_lead_sort(self): """46 (封闭式排序)股神出资""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy23_lead_amount( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select lead_invest_amount from base_project where trade_id=" + trade_id lead1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select lead_invest_amount from base_project where trade_id=" + trade_id lead2 = getdata(sql) self.assertTrue(lead1 >= lead2, msg="按股神出资排序错误") po.joinbuy23_lead_amount( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select lead_invest_amount from base_project where trade_id=" + trade_id lead1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select lead_invest_amount from base_project where trade_id=" + trade_id lead2 = getdata(sql) self.assertTrue(lead1 <= lead2, msg="按股神出资排序错误")
def test44_joinbuy_commission_sort(self): """44 (封闭式排序)佣金""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy21_commission( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select commission from base_project WHERE trade_id=" + trade_id commission1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select commission from base_project WHERE trade_id=" + trade_id commission2 = getdata(sql) self.assertTrue(commission1 >= commission2, msg="按佣金排序错误") po.joinbuy21_commission( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select commission from base_project WHERE trade_id=" + trade_id commission1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select commission from base_project WHERE trade_id=" + trade_id commission2 = getdata(sql) self.assertTrue(commission1 <= commission2, msg="按佣金排序错误")
def test21_joinbuy_phase3(self): """21 (封闭)(进取)(已结束)项目阶段""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy10_state_end( ) if po.joinbuy26_isnone( ): # 如果列表不为空 phase3 = po.joinbuy49normalmanage_phase3( ) self.assertIn(phase3, "停牌中/已结束", msg="已结束筛选无效") trade_id = po.joinbuy48_normalmanage_name3( )[1] sql1 = "select trade_finish_date from base_project WHERE trade_id=" + trade_id # '完成日期' sql2 = "select opstock_end_date from base_project WHERE trade_id=" + trade_id # '操盘结束如期' sql3 = "select opstock_last_date from base_project WHERE trade_id=" + trade_id # '最后操盘日期' finish_date = getdata(sql1).strftime("%Y-%m-%d %H:%M:%S") end_date = getdata(sql2).strftime("%Y-%m-%d %H:%M:%S") last_date = getdata(sql3).strftime("%Y-%m-%d %H:%M:%S") nowtime = datetime.now( ).strftime("%Y-%m-%d %H:%M:%S") if self.assertIsNotNone(finish_date): self.assertTrue(nowtime > finish_date, msg="项目实际阶段错误") else: # print(end_date,last_date,nowtime) self.assertTrue(nowtime > end_date and nowtime > last_date, msg="项目实际阶段错误") else: print("该项目列表为空")
def test03_joinbuy_nickname(self): """03 (开放)产品股神名字校验""" po = JoinBuy(self.driver) po.open( ) sleep(2) nickname = po.joinbuy28_open_nickname( ) trade_id = po.joinbuy27_open_name( )[1] sql1 = "select user_name from base_project WHERE trade_id=" + trade_id user_name = getdata(sql1) sql2 = "select nick_name from user_base_info WHERE user_name=" + "'" + user_name + "'" nickname_db = getdata(sql2) self.assertEqual(nickname_db, nickname, msg="用户昵称与实际不符")
def test05_joinbuy_openamount(self): """05 (开放)项目金额""" po = JoinBuy(self.driver) po.open( ) sleep(2) openamount = float(po.joinbuy30_open_amount( ).split(" ")[1]) trade_id = po.joinbuy27_open_name( )[1] sql1 = "select applied_amount from dynamic_project WHERE trade_id=" + trade_id sql2 = "select market_value from opening_project WHERE trade_id=" + trade_id applied_amount = getdata(sql1) market_value = getdata(sql2) openamount_db = int((applied_amount + market_value) / 1000) / 10 self.assertEqual(openamount_db, openamount, msg="总金额与实际不符")
def test45_joinbuy_projetcamount_sort(self): """45 (封闭式排序)总金额""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy22_projetcamount( ) elements1 = po.joinbuy55_productlist_name( ) elements2 = po.find_elements(By.XPATH, "//div[@class='root-listxq']/a") num = len(elements1) i = 0 while (i + 1) < num: trade_id = po.get_id(elements1[i]) stage = elements2[i].text if stage in "投资中/审核中": sql = "select trade_amount from base_project WHERE trade_id=" + trade_id else: sql = "select loaned_amount from dynamic_project WHERE trade_id=" + trade_id projetcamount1 = getdata(sql) i += 1 trade_id = po.get_id(elements1[i]) stage = elements2[i].text if stage in "投资中/审核中": sql = "select trade_amount from base_project WHERE trade_id=" + trade_id else: sql = "select loaned_amount from dynamic_project WHERE trade_id=" + trade_id projetcamount2 = getdata(sql) self.assertTrue(projetcamount1 >= projetcamount2, msg="总金额排序错误") po.joinbuy22_projetcamount( ) elements1 = po.joinbuy55_productlist_name( ) elements2 = po.find_elements(By.XPATH, "//div[@class='root-listxq']/a") num = len(elements1) i = 0 while (i + 1) < num: trade_id = po.get_id(elements1[i]) stage = elements2[i].text if stage in "投资中/审核中": sql = "select trade_amount from base_project WHERE trade_id=" + trade_id else: sql = "select loaned_amount from dynamic_project WHERE trade_id=" + trade_id projetcamount1 = getdata(sql) i += 1 trade_id = po.get_id(elements1[i]) stage = elements2[i].text if stage in "投资中/审核中": sql = "select trade_amount from base_project WHERE trade_id=" + trade_id else: sql = "select loaned_amount from dynamic_project WHERE trade_id=" + trade_id projetcamount2 = getdata(sql) self.assertTrue(projetcamount1 <= projetcamount2, msg="总金额排序错误")
def test13_joinbuy_nickname(self): """13 (封闭)(进取)(投资中)股神名""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): nickname = po.joinbuy39_normalmanage_user( ) trade_id = po.joinbuy38_normalmanage_name1( )[1] sql1 = "select user_name from base_project WHERE trade_id=" + trade_id user_name = getdata(sql1) sql2 = "select nick_name from user_base_info WHERE user_name=" + "'" + user_name + "'" nickname_db = getdata(sql2) self.assertEqual(nickname, nickname_db, msg="股神名与实际不符") else: print("该项目列表为空")
def test18_joinbuy_residue(self): """18 (封闭)(进取)(投资中)剩余可投""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): residue = float(po.joinbuy44_normalmanage_residue( )) trade_id = po.joinbuy38_normalmanage_name1( )[1] sql1 = "select loaned_amount from dynamic_project WHERE trade_id=" + trade_id # 已经募集资金 sql2 = "select trade_amount from base_project WHERE trade_id=" + trade_id # 募集期限额 loaned_amount = getdata(sql1) trade_amount = getdata(sql2) residue_db = float("%.1f" % int((trade_amount - loaned_amount) / 1000)) / 10 self.assertEqual(residue_db, residue, msg="剩余可投与实际不符") else: print("该项目列表为空")
def test10_joinbuy_profit(self): """10 (开放)总收益""" po = JoinBuy(self.driver) po.open( ) sleep(2) profit = round(float(po.joinbuy35_open_profit( )), 2) trade_id = po.joinbuy27_open_name( )[1] sql = "select float_profit_rate from dynamic_project WHERE trade_id=" + trade_id profit_db = round(getdata(sql) * 100, 2) self.assertEqual(profit_db, profit, msg="总收益与实际不符")
def test07_joinbuy_lead(self): """07 (开放)领投金额""" po = JoinBuy(self.driver) po.open( ) sleep(2) lead = po.joinbuy32_open_lead( ).split('¥')[-1] trade_id = po.joinbuy27_open_name( )[1] sql = "select lead_invest_amount from base_project WHERE trade_id=" + trade_id lead_db = getdata(sql) self.assertEqual(lead, str(lead_db), msg="领投金额与实际不符")
def test08_joinbuy_losure(self): """08 (开放)退出周期""" po = JoinBuy(self.driver) po.open( ) sleep(2) losure = po.joinbuy33_open_losure( ) trade_id = po.joinbuy27_open_name( )[1] sql = "select stage_closure from opening_project WHERE trade_id=" + trade_id losure_db = getdata(sql) self.assertEqual(str(losure_db), losure, msg="退出周期与实际不符")
def test09_joinbuy_commission(self): """09 (开放)项目佣金""" po = JoinBuy(self.driver) po.open( ) sleep(2) commission = Decimal("%.3f" % (float(po.joinbuy34_open_commisson( )) / 100)) trade_id = po.joinbuy27_open_name( )[1] sql = "select commission from base_project WHERE trade_id=" + trade_id commission_db = getdata(sql) self.assertEqual(commission_db, commission, msg="佣金与实际不符")
def test28_joinbuy_profit_sort(self): """28 (开放式排序)总收益""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy14_profit( ) po.joinbuy15_projectprofit( ) elements = po.joinbuy55_productlist_name( ) num = len(elements) i = 0 while (i + 1) < num: trade_id = po.get_id(elements[i]) sql = "select float_profit_rate from dynamic_project where trade_id=" + trade_id profit1 = getdata(sql) i += 1 trade_id = po.get_id(elements[i]) sql = "select float_profit_rate from dynamic_project where trade_id=" + trade_id profit2 = getdata(sql) self.assertTrue(profit1 >= profit2, msg="总收益排序无效")
def test19_joinbuy_phase2(self): """19 (封闭)(进取)(操盘中)项目阶段""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy09_state_operate( ) if po.joinbuy26_isnone( ): phase2 = po.joinbuy46_normalmanage_phase2( ) self.assertIn(phase2, "操盘中/等待操盘", msg="操盘中筛选无效") trade_id = po.joinbuy45_normalmanage_name2( )[1] sql1 = "select expire_date from base_project WHERE trade_id=" + trade_id sql2 = "select opstock_end_date from base_project WHERE trade_id=" + trade_id expiretime = getdata(sql1) opstock_end_date = getdata(sql2) nowtime = datetime.now( ) self.assertTrue(nowtime > expiretime & opstock_end_date > nowtime, msg="项目实际阶段错误") else: print("该项目列表为空")
def test04_joinbuy_opentype(self): """04 (开放)项目类型校验""" po = JoinBuy(self.driver) po.open( ) sleep(2) opentype = po.joinbuy29_open_type( ) if opentype == "进取": realtype = "manage" trade_id = po.joinbuy27_open_name( )[1] sql = "select trade_type from base_project WHERE trade_id=" + trade_id type_db = getdata(sql) self.assertEqual(realtype, type_db, msg="类型与实际不符")
def test02_joinbuy_fbi(self): """02 封闭式按钮校验""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) url = po.driver.current_url trade_id = po.joinbuy27_open_name( )[1] sql = "select project_mode from base_project WHERE trade_id=" + trade_id mode = getdata(sql) self.assertEqual(mode, "normal_mode", msg="封闭式按钮无效") self.assertIn("mode=normal_mode", url, msg="封闭式按钮跳转错误")
def test25_joinbuy_guarantee(self): """25 (封闭)(稳赢)保底收益""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy06_stable_stable_profit( ) if po.joinbuy26_isnone( ): guarantee = Decimal("%.4f" % (float(po.joinbuy53_normalprofit_guarantee( )) / 100)) trade_id = po.joinbuy52_normalprofit_name( )[1] sql = "select promise_profit_ratio from base_project WHERE trade_id=" + trade_id guarantee_db = getdata(sql) self.assertEqual(guarantee_db, guarantee, msg="项目保底收益与实际不符") else: print("该项目列表为空")
def test24_joinbuy_type(self): """24 (封闭)(稳赢)项目类型""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy06_stable_stable_profit( ) if po.joinbuy26_isnone( ): objecttype = po.joinbuy54_normalprofit_type( ) self.assertEqual(objecttype, "稳盈", msg="稳盈筛选按钮无效") trade_id = po.joinbuy52_normalprofit_name( )[1] sql = "select trade_type from base_project WHERE trade_id=" + trade_id self.assertEqual(getdata(sql), "stable_profit", msg="项目类型与实际不符") else: print("该项目列表为空")
def test23_joinbuy_type(self): """23 (封闭)(保本)项目类型""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy05_stable( ) if po.joinbuy26_isnone( ): # 如果列表不为空 objecttype = po.find_element(By.XPATH, "/html/body/div[6]/div[1]/div[1]/div[2]/div[1]/div[1]").text self.assertEqual(objecttype, "保本", msg="保本筛选功能无效") trade_id = po.joinbuy38_normalmanage_name1( )[1] sql = "select trade_type from base_project WHERE trade_id=" + trade_id self.assertEqual(getdata(sql), "stable", msg="项目类型与实际不符") else: print("该项目列表为空")
def test15_joinbuy_losure(self): """15 (封闭)(进取)(投资中)交易周期""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): losure = int(po.joinbuy41_normalmanage_losure( )) trade_id = po.joinbuy38_normalmanage_name1( )[1] sql = "select period from base_project WHERE trade_id=" + trade_id losure_db = getdata(sql) self.assertEqual(losure_db, losure, msg="交易周期与实际不符") else: print("该项目列表为空")
def test20_joinbuy_float(self): """20 (封闭)(进取)(操盘中)浮动收益""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy09_state_operate( ) if po.joinbuy26_isnone( ): floatvalue = float(po.joinbuy47_normalmanage_float( )) trade_id = po.joinbuy45_normalmanage_name2( )[1] sql = "select float_profit_rate from dynamic_project WHERE trade_id=" + trade_id floatvalue_db = float("%.2f" % (getdata(sql) * 100)) self.assertEqual(floatvalue_db, floatvalue, msg="项目浮动收益与实际不符") else: print("该项目列表为空")
def test14_joinbuy_amount(self): """14 (封闭)(进取)(投资中)项目金额""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): amount = float(po.joinbuy40_normalmanage_amount( ).split(" ")[1]) trade_id = po.joinbuy38_normalmanage_name1( )[1] sql = "select trade_amount from base_project WHERE trade_id=" + trade_id amount_db = int(getdata(sql) / 1000) / 10 self.assertEqual(amount_db, amount, msg="总金额与实际不符") else: print("该项目列表为空")
def test16_joinbuy_commisson(self): """16 (封闭)(进取)(投资中)项目佣金""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): commission = Decimal("%.3f" % (float(po.joinbuy42_normalmanage_commisson( )) / 100)) trade_id = po.joinbuy38_normalmanage_name1( )[1] sql = "select commission from base_project WHERE trade_id=" + trade_id commission_db = getdata(sql) self.assertEqual(commission, commission_db, msg="项目佣金与实际不符") else: print("该项目列表为空")
def test17_joinbuy_stop(self): """17 (封闭)(进取)(投资中)止损值""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): stopvalue = Decimal("%.2f" % float(po.joinbuy43_normalmanage_stop( ).split("-")[1])) trade_id = po.joinbuy38_normalmanage_name1( )[1] sql = "select stop_rate from base_project WHERE trade_id=" + trade_id stopvalue_db = getdata(sql) self.assertEqual(stopvalue_db, stopvalue, msg="项目止损值与实际不符") else: print("该项目列表为空")
def test26_joinbuy_shares(self): """26 (封闭)股票""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy12_product_shares( ) if po.joinbuy26_isnone( ): elements = po.joinbuy55_productlist_name( ) for i in elements: trade_id = po.get_id(i) sql = "select product_type from base_project WHERE trade_id=" + trade_id product_type = getdata(sql) self.assertEqual(product_type, "stock", msg="股票筛选按钮无效") else: print("该项目列表为空")
def test27_joinbuy_futures(self): """27 (封闭)期货""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy13_product_futures( ) if po.joinbuy26_isnone( ): elements = po.joinbuy55_productlist_name( ) # 取出元素列表循环列表比较各个投资类型 for i in elements: trade_id = po.get_id(i) sql = "select product_type from base_project WHERE trade_id=" + trade_id product_type = getdata(sql) self.assertEqual(product_type, "futures", msg="股票筛选按钮无效") else: print("该项目列表为空")
def test22_joinbuy_profit(self): """22 (封闭)(进取)(已结束)收益率""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy10_state_end( ) if po.joinbuy26_isnone( ): # 如果列表不为空 profit = Decimal("%.2f" % float(po.joinbuy50_normalmanage_profit( ))) trade_id = po.joinbuy48_normalmanage_name3( )[1] sql = "select float_profit_rate from dynamic_project WHERE trade_id=" + trade_id profit_db = Decimal("%.2f" % (getdata(sql) * 100)) self.assertEqual(profit_db, profit, msg="项目收益率与实际不符") else: print("该项目列表为空")
def test12_joinbuy_type(self): """12 (封闭)(进取)(投资中)项目类型""" po = JoinBuy(self.driver) po.open( ) sleep(2) po.joinbuy02_fbi( ) po.joinbuy04_manage( ) po.joinbuy08_state_invest( ) if po.joinbuy26_isnone( ): objecttype = po.joinbuy37_normalmanage_type( ) self.assertEqual(objecttype, "进取", msg="类型-进取按钮无效") trade_id = po.joinbuy38_normalmanage_name1( )[1] sql = "select trade_type from base_project WHERE trade_id=" + trade_id tradetype = getdata(sql) self.assertEqual(tradetype, "manage", msg="项目实际类型错误") else: print("该项目列表为空")