web自动化测试

一、梳理

1、根据要求需要自动添加很多条数据

2、这就涉及到很多方面的知识。元素定位的方法(这个就能遇到很多坑,要完全掌握元素定位才能避免进坑)、循环等(代码基础要掌握好)

二、操作

  1. 选择进行自动化操作的浏览器(火狐,谷歌二选一),我一般用谷歌浏览器。下载对应版本的chomedriver
 
#!/usr/bin/env python
#-*- coding: utf-8 -*-
'''
 @File  : vuid_list.py
 @Author: kiki
 @Date  : 2019-10-14
 
 '''
# -*- coding:utf-8 -*-
import random
import time
import os
from selenium import webdriver

url = 'https://...................../list'
chromedriver = "/Users/admin/Downloads/chromedriver"         #Mac ChomeDriver存放位置


def randomSleep(minS, maxS):  # 定义随机停顿时间函数
    time.sleep((maxS - minS) * random.random() + minS)


# 声明浏览器对象
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)

driver.get(url)  # 访问页面,用 get() 方法来请求一个网页,参数传入链接 URL
randomSleep(1, 2)

driver.find_element_by_id('username').send_keys('1')
time.sleep(1)
driver.find_element_by_id('password').send_keys('1')
randomSleep(1, 2)

# 点击登录
driver.find_element_by_xpath('//*[@id="LAY-user-login"]/div/div[2]/div[3]/button').click()
time.sleep(4)


def number():
    # driver.maximize_window()
    driver.implicitly_wait(10)
    # 输入vuid,数量
    input_box=driver.find_element_by_xpath('//*[@id="form"]/div[1]/div/input')
    input_box.send_keys('VSTB1')
    # input_box.send_keys()
    time.sleep(2)
    driver.find_element_by_xpath('//*[@id="number"]').send_keys('1')
    time.sleep(1)
    driver.find_element_by_xpath('//*[@id="form"]/div[3]/button').click()
    time.sleep(3)
    # clear():清空输入框
    try:
        time.sleep(2)
        input_box.clear()
        print('成功清空输入框')
    except Exception as e:
        print('fail清空输入框'+format(e))
    # time.sleep(5)


if __name__ == "__main__":
    for i in range(0, 10):                    #number(要执行的操作)循环10次
        number()

这里遇到一个小难题,就是输入框的内容要重复输入,就需要用到clear()来清除之前输入的内容,避免输入的内容叠加。就像这样

 clear()后的效果是这样:

 下篇会写个元素定位的知识,新手上路,有错误请前辈们多多指教!

原文地址:https://www.cnblogs.com/qiqi-yhq/p/11675861.html