zoukankan      html  css  js  c++  java
  • selenium入门编程总结学习于龙腾)

    """
    编程题
    打开 http://ip/ecshop/wwwroot/admin/privilege.php?act=login
    登录(admin/123456)
    点击商品管理-》添加新商品-》输入商品名称:dell电脑、分类:电脑、价格:3999,点击添加
    断言是否添加成功page_source有没有添加商品成功。
    """


    from selenium import webdriver
    from time import sleep

    # 启动Chrome
    # driver = webdriver.Chrome()
    driver = webdriver.Firefox() # 该处修改,输入商品名后,概率性出现输入文字后,又自动被清空。验证是否是浏览器影响
    # 最大化窗口
    driver.maximize_window()

    driver.get('http://ip/newecshop/admin/privilege.php?act=login')
    driver.find_element('name', 'username').send_keys('admin')
    driver.find_element('name', 'password').send_keys('123456')
    driver.find_element('name', 'remember').click()
    driver.find_element('class name', 'button2').click()

    sleep(0.1)
    # driver.save_screenshot(r'F:1.png')
    driver.switch_to.frame('header-frame') # 切换到顶部frame
    exit_text = driver.find_elements('link text', '退出')
    # assert u'退出' in exit_text
    if len(exit_text) > 0: # 判断是否登录成功
    print('登陆成功!!!')

    driver.switch_to.parent_frame() # 切换到父类frame
    driver.switch_to.frame('menu_frame') # 切换到商品列表所在frame

    driver.find_element('link text', '商品管理').click() # 点击商品管理
    sleep(0.1)
    driver.find_element('link text', '添加新商品').click() # 添加新商品

    driver.switch_to.parent_frame() # 切换到父类frame
    driver.switch_to.frame('main_frame') # 切换到添加商品详情页面所在frame
    sleep(0.1)
    newsGoods_list = driver.find_elements('id', 'search_id')
    if len(newsGoods_list) > 0: # 判断是否登录成功
    print('进入>>管理中心- 添加新商品')

    sleep(3)
    driver.find_element('name', 'goods_name').send_keys('dell电脑') # 输入商品名称:dell电脑

    sleep(1)
    driver.find_element('id', 'cat_name').send_keys('电脑') # input框只能send_key()
    du_box = driver.find_elements('class name', 'level0')
    print(len(du_box))
    du_box[-1].click() # 该位置非select下拉框,不能直接选择,且元素ID是动态变化的,所有需要先部分搜索再取列表选择
    # sleep(3) 该下拉框有毒
    # driver.find_element('xpath', '/html/body/div[2]/div[2]/form/table[1]/tbody/tr[3]/td[2]/div/ul/li[25]/a/span[2]').click()


    sleep(2) # 先清空默认值0,再输入价格
    driver.find_element('name', 'shop_price').clear() # 输入本地售价
    driver.find_element('name', 'shop_price').send_keys('3999')
    driver.find_element('id', 'goods_info_submit').click() # 保存

    # 判断页面文字提示
    # add_suc = driver.find_element('css selector', 'body > div.list-div > div > table > tbody > tr:nth-child(1) > td:nth-child(2)').text
    # print(add_suc)
    # assert u'添加商品成功。' in add_suc

    sleep(1)
    # 判断源码中是否包含添加商品成功
    page_sc = driver.page_source
    assert u'添加商品成功。' in page_sc


    sleep(5) # 缓口气
    driver.quit()

  • 相关阅读:
    Linux-1-用户管理
    接口相关资料整理
    JPype1使用总结
    1.django项目的创建(在CMD中)
    公有云、私有云和混合云的区别
    接口测试1.测试用例要点与模板
    PostMan Test 的脚本scripts编写方法
    Tensorflow RNN中的坑
    2019年终总结
    tensorflow中一种融合多个模型的方法
  • 原文地址:https://www.cnblogs.com/guobaozhu/p/13260124.html
Copyright © 2011-2022 走看看