zoukankan      html  css  js  c++  java
  • 去哪儿面试题

    UI自动化测试
    Qunar机票搜索场景
    访问Qunar机票首页http://flight.qunar.com,选择“单程”,输入出发、到达城市,选择today+7日后的日期,点“搜索”,跳转到机票单程搜索列表页。
    在列表页停留1分钟,至到页面上出现“搜索结束”。
    如果出现航班列表,对于出现“每段航班均需缴纳税费”的行随机点选“订票”按钮,在展开的列表中会出现“第一程”、 “第二程”;对于没有出现“每段航班均需缴纳税费”的行随机点选“订票”按钮,在展开的列表底部中会出现“报价范围”
    如果不出现航班列表,则页面会出现“该航线当前无可售航班”
    请使用maven创建java工程,引入Selenium框架,编写WebUI代码,实现上述人工操作和验证。要求能随机验证100个城市对的3个月内的任意搜索条件。

    未完工代码

    #coding=utf-8
    from selenium import  webdriver
    from selenium.webdriver.common.keys import Keys
    from time import   sleep
    from selenium.common.exceptions import InvalidSelectorException
    from selenium.common.exceptions import NoSuchElementException
    
    dictlist = {}
    dr = webdriver.Firefox()
    
    
    def search():
    
    #open website
        dr.get('http://flight.qunar.com')
    #click single travel
        dr.find_element_by_id('searchTypeSng').click()
    
    #clear
        dr.find_element_by_xpath("//input[@name='fromCity']").clear()
    
    
    #enter from city
        dr.find_element_by_xpath("//input[@name='fromCity']").send_keys("北京".decode("utf-8"))
    
    #clear
        dr.find_element_by_xpath("//input[@name='toCity']").clear()
    
    
    #enter to city
        dr.find_element_by_xpath("//input[@name='toCity']").send_keys("深圳".decode("utf-8"))
    
    
    #clear
        dr.find_element_by_xpath("//input[@name='fromDate']").clear()
    
    #enter date
        dr.find_element_by_xpath("//input[@name='fromDate']").send_keys("2014-07-22")
    
    #click
        dr.find_element_by_xpath("//div[@id='js_flighttype_tab_domestic']//button[text()='搜 索']").click()
    
    #sleep
        sleep(6)
    
    #wait searching end
        while True:
            tex = dr.find_element_by_id('progTip')
            if(tex.text.find("搜索结束".decode("utf-8")) >= 0):
                break
            else:
                sleep(1)
    
    
    def elementsisexist(id):
        try:
            dr.find_element_by_id(id)
            return True
        except NoSuchElementException, e1:
            return False
    
    
    
    def finddicts():
        cnt = 0
        while True:
            try:
                links = dr.find_elements_by_class_name("avt_column")
                for link in links:
                    print(link.get_attribute('id'))
                    dictlist[cnt] = link.get_attribute('id')
                    cnt += 1
                break
            except InvalidSelectorException,e:
                if(elementsisexist('nextXI3')):
                    dr.find_element_by_id('nextXI3').click()
                    sleep(10)
                else:
                    break
    
    
    
    
    
    if __name__=='__main__':
        search()
        finddicts()
        dr.quit()
    

      

      

  • 相关阅读:
    TensorFlow使用细节 NO1
    tensorflow的keras实现搭配dataset 之二
    tensorflow的keras实现搭配dataset 之一
    windows程序设计 Unicode和多字节之间转换
    windows程序设计 Unicode和多字节
    windows程序设计 显示一个窗口
    windows程序设计 获取系统文件路径
    windows程序设计 基础
    windows程序设计 加载位图图片
    windows程序设计 创建一个新的窗口
  • 原文地址:https://www.cnblogs.com/xiaobaichuangtianxia/p/3774913.html
Copyright © 2011-2022 走看看