51Testing软件测试论坛

标题: python + selenium 能定位出来算你厉害 [打印本页]

作者: 测试积点老人    时间: 2021-10-22 13:40
标题: python + selenium 能定位出来算你厉害
[attach]134908[/attach]
[color=rgba(0, 0, 0, 0.75)]常规定位元素方法基本上都试过了,定位不到。各位看看还有什么方法能进行元素定位
  1. from tkinter import Image
  2. import ddt
  3. import unittest2
  4. from upl.webUtil import *
  5. #
  6. import pytesseract
  7. from PIL import Image
  8. from PIL import Image, ImageEnhance
  9. import os
  10. import time
  11. @ddt.ddt()
  12. class UPL_Test(unittest2.TestCase):
  13.     def setUp(self) -> None:
  14.         self.driver = WebDriverUtil(path='chromedriver.exe')
  15.         self.driver.get("http://192.168.59.122/user/login")
  16.         self.driver.read("xpath.json")
  17.     @ddt.file_data("data.json")
  18.     def test(self, login):
  19.         # 登录
  20.         self.login(login)
  21.         #音视频管理
  22.         self.video()
  23.     def login(self, login):
  24.         self.driver.section = "login"
  25.         # 进入登录页面
  26.         # self.driver.get(login["url"])
  27.         # 用户名输入
  28.         self.driver.find_element("name").send_keys(login["name"])
  29.         # 密码输入
  30.         self.driver.find_element("password").send_keys(login["password"])
  31.         # 获取验证码
  32.         self.driver.find_element("code").send_keys(login["code"])#yzm()
  33.         # 点击登录按钮
  34.         self.driver.driver.implicitly_wait(5)
  35.         self.driver.find_element("button").click()
  36.     def video(self):
  37.         self.driver.section="video"
  38.         time.sleep(2)
  39.         #点击节目单管理
  40.         self.driver.find_element("programme").click()
  41.         #新增
  42.         self.driver.find_element("p_add").click()
  43.         time.sleep(10)
  44. if __name__ == '__main__':
  45.     unittest2.main()
复制代码
xpath.json
  1. {
  2. "login": {
  3.     "name": {
  4.       "type": "id",
  5.       "value": "username"
  6.     },
  7.    "password": {
  8.      "type":"id",
  9.      "value": "password"
  10.    },
  11.    "code": {
  12.      "type": "id",
  13.      "value": "inputCode"
  14.    },
  15.    "button": {
  16.      "type": "xpath",
  17.      "value": "//*[@id='formLogin']/div[2]/div/div/span/button"
  18.    },
  19.    "code_image": {
  20.      "type": "xpath",
  21.      "value": "//form[@id='formLogin']/div[1]/div[3]/div/div[4]/div[2]/img"
  22.    }
  23. },
  24.   "video": {
  25.     "programme": {
  26.      "type": "xpath",
  27.      "value": "//*[@id='app']/section/aside/div/ul/li[9]/ul/li[2]/a/span"
  28.    },
  29.     "p_add": {
  30.       "type": "xpath",
  31.       "value": "//*[@id='app']/section/section/main/div[2]/div/div/div/div[2]/button"
  32.     }
  33.   }
  34. }
复制代码



作者: zeams1    时间: 2021-10-23 13:52
ide能录不
作者: 海海豚    时间: 2021-10-25 09:48
xpath吧
作者: qqq911    时间: 2021-10-25 10:17
根据文字内容定位
作者: litingting0214    时间: 2021-10-25 16:17
根据span中的文案定位




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2