1 # -*- coding: utf-8 -*- 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 from selenium.webdriver.common.keys import Keys 5 from selenium.webdriver.support.ui import Select 6 from selenium.common.exceptions import NoSuchElementException 7 from selenium.common.exceptions import NoAlertPresentException 8 import unittest, time, re 9 from time import sleep 10 import unittest 11 import HTMLTestRunner 12 13 class Amei(unittest.TestCase): 14 def setUp(self): 15 self.driver = webdriver.Firefox() 16 self.driver.implicitly_wait(30) 17 self.base_url = "******" 18 self.verificationErrors = [] 19 self.accept_next_alert = True 20 21 def test_amei(self): 22 driver = self.driver 23 driver.get(self.base_url + ":8081/ybl/ydc/cms/productYbl/v_add.do?") 24 driver.find_element_by_id("UOrgname").clear() 25 driver.find_element_by_id("UOrgname").send_keys(u"天") 26 driver.find_element_by_css_selector("li").click() 27 Select(driver.find_element_by_id("applyNo")).select_by_visible_text("R20170111165645") 28 driver.find_element_by_id("proName").clear() 29 #项目名称(需要修改) 30 driver.find_element_by_id("proName").send_keys(u"【利活宝】1135") 31 Select(driver.find_element_by_id("proType")).select_by_visible_text(u"商业保理") 32 driver.find_element_by_id("orgDeployment").clear() 33 driver.find_element_by_id("orgDeployment").send_keys(u"######") 34 driver.find_element_by_css_selector("#autoSuggestionsList1 > li").click() 35 Select(driver.find_element_by_id("gid")).select_by_visible_text(u"#######") 36 driver.find_element_by_id("fundAmountOnShow").clear() 37 #募集金额(根据需要修改) 38 driver.find_element_by_id("fundAmountOnShow").send_keys("1,500,000") 39 driver.find_element_by_xpath(".//*[@id='leastAmountOnShow']").clear() 40 driver.find_element_by_xpath(".//*[@id='leastAmountOnShow']").send_keys("100") 41 driver.find_element_by_id("yearRate").clear() 42 #年化利率(根据需要修改) 43 driver.find_element_by_id("yearRate").send_keys("8") 44 Select(driver.find_element_by_id("proTransferPlans")).select_by_visible_text(u"保理6/7/8/9") 45 driver.find_element_by_id("noticeTime").clear() 46 #预告时间 47 driver.find_element_by_id("noticeTime").send_keys("2017-02-09 17:50:00") 48 driver.find_element_by_xpath(".//*[@id='raiseBTime']").clear() 49 #募集开始时间 50 driver.find_element_by_xpath(".//*[@id='raiseBTime']").send_keys("2017-02-10 15:30:00") 51 driver.find_element_by_id("raiseETime").clear() 52 #募集结束时间 53 driver.find_element_by_id("raiseETime").send_keys("2017-02-28 18:30:00") 54 driver.find_element_by_id("rateTime").clear() 55 #预计起息时间 56 driver.find_element_by_id("rateTime").send_keys("2017-03-01 18:30:00") 57 driver.find_element_by_id("repayTime").click() 58 driver.find_element_by_id("repayTime").clear() 59 #还款时间 60 driver.find_element_by_id("repayTime").send_keys("2017-06-12 11:30:00") 61 driver.find_element_by_name("leastHoldDays").clear() 62 driver.find_element_by_name("leastHoldDays").send_keys("10") 63 driver.find_element_by_name("clearHoldDays").clear() 64 driver.find_element_by_name("clearHoldDays").send_keys("10") 65 driver.find_element_by_id("comAddr").clear() 66 driver.find_element_by_id("comAddr").send_keys("1111") 67 driver.find_element_by_id("regAmountOnShow").clear() 68 driver.find_element_by_id("regAmountOnShow").send_keys("1,000") 69 driver.find_element_by_id("comSize").clear() 70 driver.find_element_by_id("comSize").send_keys("1000") 71 driver.find_element_by_id("regDate").click() 72 driver.find_element_by_id("regDate").send_keys("2016-09-01") 73 driver.find_element_by_id("attachmentFile1").clear() 74 driver.find_element_by_id("attachmentFile1").send_keys(u"E:\\tao\\后台发标资料\\datongshixinglongfashangmaocompic.zip") 75 driver.find_element_by_css_selector("input.upload-button").click() 76 sleep(5) 77 driver.find_element_by_id("attachmentFile2").clear() 78 driver.find_element_by_id("attachmentFile2").send_keys(u"E:\\tao\\后台发标资料\\datongshixinglongfashangmaofilepic.zip") 79 driver.find_element_by_css_selector("#afc2 > input.upload-button").click() 80 sleep(5) 81 driver.find_element_by_id("attachmentFile3").clear() 82 driver.find_element_by_id("attachmentFile3").send_keys(u"E:\\tao\\后台发标资料\\EBL2015090200001.pdf") 83 driver.find_element_by_css_selector("#afc3 > input.upload-button").click() 84 sleep(5) 85 driver.find_element_by_id("attachmentFile4").clear() 86 driver.find_element_by_id("attachmentFile4").send_keys(u"E:\\tao\\后台发标资料\\EBL2015090200001.zip") 87 driver.find_element_by_css_selector("#afc4 > input.upload-button").click() 88 sleep(5) 89 driver.find_element_by_id("attachmentFile5").clear() 90 driver.find_element_by_id("attachmentFile5").send_keys(u"E:\\tao\\后台发标资料\\017.jpg") 91 driver.find_element_by_css_selector("#afc5 > input.upload-button").click() 92 sleep(5) 93 driver.find_element_by_id("proServiceRate").clear() 94 driver.find_element_by_id("proServiceRate").send_keys("0") 95 Select(driver.find_element_by_id("comTrade")).select_by_visible_text(u"零售行业") 96 Select(driver.find_element_by_id("comCategory")).select_by_visible_text(u"家居用品") 97 #可用/不可用 98 Select(driver.find_element_by_id("isCouponAble")).select_by_visible_text(u"可用") 99 driver.find_element_by_id("introduction").clear() 100 driver.find_element_by_id("introduction").send_keys("1") 101 driver.find_element_by_id("qualifications").clear() 102 driver.find_element_by_id("qualifications").send_keys("11") 103 driver.find_element_by_id("leadUse").clear() 104 driver.find_element_by_id("leadUse").send_keys("111") 105 driver.find_element_by_name("repaySafe").clear() 106 driver.find_element_by_name("repaySafe").send_keys("1111") 107 driver.find_element_by_id("proSafelyInfo").clear() 108 driver.find_element_by_id("proSafelyInfo").send_keys("1111") 109 driver.find_element_by_id("busiCo").clear() 110 driver.find_element_by_id("busiCo").send_keys("111111") 111 sleep(3) 112 driver.find_element_by_xpath(".//*[@id='jvForm']/table[2]/tbody/tr[24]/td/input[2]").click() 113 sleep(2) 114 115 def test_fabu(self): 116 driver = self.driver 117 driver.get(self.base_url + "/yblweb/index.html") 118 driver.find_element_by_css_selector("i").click() 119 driver.find_element_by_id("user_name").click() 120 driver.find_element_by_id("user_name").click() 121 driver.find_element_by_id("user_name").clear() 122 driver.find_element_by_id("user_name").send_keys("fhrt") 123 driver.find_element_by_id("user_password").click() 124 driver.find_element_by_id("user_password").clear() 125 driver.find_element_by_id("user_password").send_keys("123456") 126 driver.find_element_by_css_selector("button.bt").click() 127 driver.find_element_by_link_text(u"融资管理").click() 128 driver.find_element_by_link_text(u"发布").click() 129 driver.find_element_by_link_text(u"发布项目").click() 130 driver.find_element_by_id("password").click() 131 driver.find_element_by_id("password").clear() 132 driver.find_element_by_id("password").send_keys("123456") 133 #driver.find_element_by_id("captcha").send_keys("abcd") 134 time.sleep(10) 135 driver.find_element_by_id("submit_button").click() 136 137 def is_element_present(self, how, what): 138 try: self.driver.find_element(by=how, value=what) 139 except NoSuchElementException as e: return False 140 return True 141 142 def is_alert_present(self): 143 try: self.driver.switch_to_alert() 144 except NoAlertPresentException as e: return False 145 return True 146 147 def close_alert_and_get_its_text(self): 148 try: 149 alert = self.driver.switch_to_alert() 150 alert_text = alert.text 151 if self.accept_next_alert: 152 alert.accept() 153 else: 154 alert.dismiss() 155 return alert_text 156 finally: self.accept_next_alert = True 157 158 def tearDown(self): 159 self.driver.quit() 160 self.assertEqual([], self.verificationErrors) 161 162 if __name__ == "__main__": 163 unittest.main()