首页 > 编程语言 >微软Playwright-UI自动化中常用方法总结-java

微软Playwright-UI自动化中常用方法总结-java

时间:2023-06-04 13:01:46浏览次数:57  
标签:playwright java ClickOptions click Playwright UI new 浏览器 page

经过多天对微软自动化框架Playwright的使用,发现还没有讲该框架的常用方法,比如定位、按键等操作使用。今天我们正好来说说。

  一、鼠标类操作

        1.单点

           .click();

  

 click(String selector) {
                               this.click(selector, (ClickOptions)null);                        }

        2.双击

           .dbclick();

       

 dblclick(String selector) {
                               this.dblclick(selector, (DblclickOptions)null);                        }

         3.鼠标左键

      

page.click(new Locator.ClickOptions().setButton(MouseButton.LEFT).toString());

         4.鼠标右键

page.click(new Locator.ClickOptions().setButton(MouseButton.RIGHT).toString());

         5.Shift+单点


page.click(new Locator.ClickOptions().setModifiers(Arrays.asList(KeyboardModifier.SHIFT)).toString());

         6.鼠标悬浮

            page.hover();

         7.左上角点击


page.click(new Locator.ClickOptions().setPosition(0,0).toString());

         8.强制点击(如果有覆盖物,如活动弹窗等,在元素上产生干扰)

page.click(new Locator.ClickOptions().setForce(true).toString());

         9.下发事件(没有通过常规点击方式)

page.getByRole(AriaRole.BUTTON).dispatchEvent("click");


二、键盘输入

       1.字符串批量  

page.locator("#area").type("Hello,world!");

        2.键盘字符输入

page.getByText("Submit").press("Enter");

page.getByRole(AriaRole.TEXTBOX).press("Control+ArrowRight");

page.getByRole(AriaRole.TEXTBOX).press("$");

         3.大小写区分,支持快捷键组合方式

page.locator("#name").press("Shift+A");

page.locator("#name").press("Shift+ArrowLeft");


将Playwright对浏览器的操作代码记录并解释下

  1. 创建浏览器对象

       //默认为无头浏览器方式启动

   browser = playwright.chromium().launch();

   //浏览器参数设定方式启动

browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(true).setSlowMo(5000))

;

2.创建浏览器上下文

context = browser.newContext

3.创建page对象

一个page对应一个浏览器选项卡

page = context.newPage();

4.多个浏览器启动

   

package org.example;import com.microsoft.playwright.Browser;import com.microsoft.playwright.BrowserType;import com.microsoft.playwright.Playwright;public class MoreBrowserDemo {

   public Browser createBrowser(String name, Playwright playwright) {
       try{
           switch (name){
               case "firefox":
                   return playwright.firefox().launch(new BrowserType.LaunchOptions().setHeadless(false).setTimeout(120*1000)); "chromium":
                   return playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false).setTimeout(120*1000)); "webkit":
                   return playwright.webkit().launch();           }
       }catch (Exception e){
           e.printStackTrace();       }
       return null;   }
}

这样就可以根据不同的浏览器对应启动方法,大家可以写代码自己尝试下。

微软Playwright-UI自动化中常用方法总结-java_playwright

标签:playwright,java,ClickOptions,click,Playwright,UI,new,浏览器,page
From: https://blog.51cto.com/u_11894/6410444

相关文章

  • element-ui 组件二次封装
    习题链接element-ui组件二次封装课程列表修复bug,实现elementui组件中的单选功能。关键点作用域插槽(ScopedSlots)在父组件中使用slot-scope="scope"指定了一个名为scope的变量,当然也可以使用其他名称在插槽中就可以使用scope是点父组件中的数据ElementUI组件的Radi......
  • java基础知识之 算法 九九乘法表
    /**auther:kevindate:20110710function:amultiplicationtableEditon:1rt*/importjava.util.Scanner;//progarmusesclassScannerpublicclassJiujiu{//mainmethodbeginsexecutionofJavaapplicationpublicstaticvoidmain(Stringargs[]){J......
  • java基础知识之 算法 【冒泡排序】【快速排序】
     /**@auther:kevin@function:冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结......
  • java软件开发工程师实习求职常见面试题
    1、请说出作用域public,private,protected,以及不写时的区别这四个作用域的可见范围如下表所示。说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。 作用域   当前类同一package子孙类其他packagepublic   √    √         √      ......
  • 2022-2023 java高级面试总结
    1.Java内存模型是什么?JMM即Java内存模型(Javamemorymodel),在JSR133里指出了JMM是用来定义一个一致的、跨平台的内存模型,是缓存一致性协议,用来定义数据读写的规则。Java内存模型规范java如何按需禁用缓存和编译优化的方法。2.mysql查询第一万条数据后20条数据,sql语句如何写?sel......
  • 2022-2023-java大厂面试真题
    【美团】面试真题: 1、SPRINGAOP底层原理 一、AOP概念: AOP(AspectOrientedProgramming),即面向切面编程,可以说是OOP(ObjectOrientedProgramming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发......
  • Java 容器详解:使用与案例
    Java容器是一套工具,用于存储数据和对象。可以与C++的STL类比。Java容器也称为JavaCollectionFramework(JCF)。除了存储对象的容器之外,还提供了一套工具类,用于处理和操作容器中的对象。总体来说,这是一个框架,它包含了Java对象容器和工具类。一、概览容器主要包括Collection......
  • java中Date类型和时间戳、Date和String互转代码
    /***10位时间戳转Date类型*@paramtimeStamp*@return*/publicstaticDatestamp2Date(StringtimeStamp){SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");Datedate=null;try{......
  • Java反编译工具Jad的下载与使用示例
    场景Java反编译工具-JD-GUI下载以及使用:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/84317051上面讲过Java反编译工具JD-GUI的使用,如果使用jad并通过命令如何实现反编译。 为了验证Java开发手册中为什么不推荐使用+进行字符串拼接,我们编写示例代码并编译和......
  • CoreJava笔记
    Day1-java基础java发展史1995年SUN公司发布了java2005年将JDK1.5更名为JDK5.02009年Oracle收购了SUN公司2014年推出了JDK8.0....java的优势简单纯面向对象开源跨平台前期准备安装JDK配置环境变量JAVA_HOME:JDK的安装路径作用:告知计算机其他软......