• 12
  • 13
分享

1.你如何用Selenium测试?

Selenium+Maven+TestNG+Jekins

2.如何解决问题?

先思考,然后百度,考虑网速、电脑配置等原因,这题主要看重解决问题的能力和思维。

3.你是怎么开发测试框架的?

Selenium+Maven+TestNG+Jekins

4.做自动化测试的目的?

a.用来回归 b.用来监控系统稳定性 c.提高工作效率

5.PO模型是怎么做的?

pageObject :页面层,操作层,业务层集合成case

6.如何判断case是否通过?

断言,与预期结果比较

7.你项目中有多少case,通过率怎么样?

按实际回答,上千个,一般是70-80%左右,

8.失败截图的原理是什么?

利用监听,重写TestNG的失败方法进行截图。

9.报告哪里来,主要统计什么?

报告由测试用例执行情况,如TestNG生成,主要统计成功、失败率,截图和记录日志。

10.testNG中注解有哪些

@test @BeforeSuite @AfterSuite

@BeforeTest @AfterTest

@BeforeClass @AfterClass

@BeforeMethod @AfterMethod

11.TestNG有哪些优点

TestNG的注释非常强大和方便

TestNG允许并行测试

TestNG可以给予group方式执行测试

TestNG可以生成测试报表,并且报表展示多样化,可以在其基础上自行开发测试报告,插件以及测试监听器等

12.什么是web自动化

指的是从UI界面,也就是用户界面层面进行的自动化测试,测试人员通过编程自动化的程序也就是自动化脚本实现打开界面,操作界面的业务逻辑

13.写出selenium 中你最熟悉的接口或者类

WebDriver InternetExplorerDriver FirefoxDriver ChromeDriver WebElement WebDriverWait By

14.Xpath 是什么?

是web页面元素定位的一种方式,相当于元素dom中的一个路径,可以采用绝对路径和相对路径的方式进行定位,对于定位页面元素有很大的帮助,同时需谨慎使用,当页面结果发生变化,那么定位信息也可能需要变化

15.findElement()和findElements()方法有什么区别

两个都是查找元素的方式

findElement()查找一个页面元素,只会返回WebElement对象

findElements()查找页面是所有符合匹配的元素,返回元素集合

16.登录按钮除了click方法还有其他方式吗?

submit() ,前提是input元素的type 为submit

17.简述你知道的延迟等待方式

硬性等待,也叫线程等待,通过休眠的方式完成等待如等待5秒Thead.sleep(5000)

隐式等待,通过imlicitlyWait完成延时等待,这种事针对全局设置的等待,如设置超市10秒,使用imlicitlyWait后,如果第一次没有找到元素,会在10秒之内不断循环查找元素,如果超时间10秒还没有找到,则抛出异常

显式等待,智能等待,针对指定元素定位指定等待时间,指定的范围内进行元素查找,找到元素则直接返回,超时没有找到元素则抛出异常

18.怎么对含有验证码的功能进行自动化测试

图像识,难度大,效果不好不推荐

屏蔽验证码,邀请开发处理,在测试环境,预发和正式环境恢复

万能验证码,使用复杂的其他人无法猜到的验证码

19.如何验证复选按钮是不是被选中

可以使用元素的is selected()方法,如果返回的是true则说明被选中,否则表明未被选中

20.如何处理alert 弹窗?

先定位跳转到alert上,然后点击确认或取消

Alert alert = dirver.swichTo().alert();//切换到alert
alert.accept();//确定
alert.dismiss();//

21.如何用webdriver进行鼠标右键点击操作

使用Actions 类

Actions actions = new Actions(driver)
actions.moveToElement(element).perform();
actions.contextClick.perform();

22.如何使用webdriver 执行拖拽 的操作

还是使用actions类

Actions actions = new Actions(driver)
WebElement element1 = driver.findElement(by);
WebElement element2 = driver.findElement(by);
actions.dragAndDrop(element1,element2)perform();

23.举一个WebDriver中方法重载的例子

frame(string, name), frame(int index), frame(Web Element element)

24.下拉菜单如何选择一个菜单项?

如果下拉菜单是select 标签,使用方法;select By Value() 或者selectByIndex()或者select ByVisibleText()即可

如果这个下拉菜单不是通过select标签创建,则直接通过xpath 定位元素然后去点击选择

25.你如何模拟浏览器的前后移动?

driver.navigate().back();
driver.navigate().forward();

26.你如何获得当前页面的URL?

driver.getCurrentUrl();

27.如何在WebDriver中实现同步?

我们可以使用隐式等待。

语法 - driver.manage()。timeouts()。implicitlyWait(10,TimeUnit.SECONDS);

如果执行驱动程序没有立即在页面中找到元素,它将等待10秒。此代码将自动附加到脚本的每一行。每次都不需要写。打开浏览器后只需编写一次。

28. 如何从文本框中获取打字文本?

通过将arg作为值传递来使用getAttribute(“value”)方法。

String typedText = driver.findElement(By.xpath(“xpath of box”)).getAttribute(“value”));

29. 你如何清除中文本框的内容?

使用clear()方法。

driver.findElement(By.xpath(“xpath of box”)).clear();

30.如何在webdriver中调用应用程序?

driver.get(“url”); or driver.navigate().to(“url”);

31. 如何获取页面上的帧数?

List <WebElement> framesList = driver.findElements(By.xpath("//iframe"));
int numOfFrames = frameList.size();


作者:软件测试自动化测试

原文链接:https://blog.csdn.net/ZangKang1/article/details/113885587


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 要时刻牢记自己擅长什么,不擅长什么,不要什么都想要。说起来简单,做起来难啊~记得小时候,我太姥姥经常说,“难活的人,难活的人哪~”那个时候不太理解,也不认同,只是牢记了这么句话,现在随着年龄的增长,人生阅历的累积,慢慢越来越认识到太姥姥的智慧啊~老太太活到100多岁哪~人为什么难活?我觉得就是生活的环境中,人心最复杂,最多变,最善变。尤其是自己的心,最难守。经常会忘了自己为什么出发,到底要到哪里去。经常忘记自己最擅长什么,最不擅长什么,什么都想要。以为世界之大,自己什么都能改变。慢慢碰壁多了,就知道自己什么都改变不了,能改变的,只有自己,也只能是自己。对别人的影响,就留给别人去把握吧。别以为自...
            1 1 879
            分享
          •   苹果公司CEO蒂姆?库克在接受《早安美国》节目的采访时表示,他使用了ChatGPT这款聊天机器人,并对其感到兴奋。他还透露,苹果正在密切关注这项技术,并有一些独特的应用场景。  ChatGPT是由OpenAI开发的一款基于生成式人工智能(generativeAI)的聊天机器人,可以与人类进行自然的对话。据报道,今年早些时候,苹果公司出于隐私方面的考虑,限制了员工使用ChatGPT。  当被问及是否使用OpenAI的聊天机器人时,库克称:“哦,我当然使用它。是的,我对它很兴奋。我认为它有一些独特的应用,你可以相信这是我们正在密切关注的东西。”  库克对人工智能和生成式人工智能持谨慎态度,而其...
            0 0 861
            分享
          •   自动化测试是指运行软件程序后,自动执行测试用例并在没有任何人为干预的情况下产生测试结果。 它比手动测试更优越的地方在于,很大程度上节省了人力和时间,并且在测试中没有或者少有错误。此外,还可以多次测试相同的应用程序,从而最大限度地减少冗余的手动工作。  本文旨在推荐一些在全球广泛使用的测试自动化工具,其中既有商业软件也有开源软件,不过即使是商业软件,大部分都可以免费试用。  1、 LambdaTest  LambdaTest 是用于桌面和 Web 应用程序的自动化测试工具。使用 LambdaTest,可以在 2000 多种桌面和移动浏览器上执行手动和自动跨浏览器测试,支持 Python、Ja...
            0 0 2305
            分享
          • 岁月流逝,万物轮回依旧,人生苦短,酸甜苦辣咸,构造丰富多彩人生。也曾失落彷徨,也曾泪水流淌,也曾过度失望!但内心那颗不骄不躁,不卑不亢的心一直在挣扎徘徊。我不否认我是一个患得患失,多愁善感的人。即便如此,骨子里流淌着的不乏那一种不安于现状,不妥协沉望的劲头。一辈子很长也很短,有时候长的让人浮想联翩,有时候短的让人一蹴而就,似乎一转眼生命就到了尽头。好吧,我不想引申这方面。总之一句话,人生苦短,干!目前从事测试工程师职位,说起来也是不可思议。行伍出身的我,在退伍复员后,没有明确追求,机缘巧合,加入到测试大军中去。这一个转身,简直没谁了。外表强壮的我,说话谈吐硬汉腔调的我,怎么也跟戴眼镜穿格子衫的...
            0 0 5491
            分享
          • 1、Xss攻击型的bugXss攻击即跨站脚步攻击,通过插入恶意脚本,实现对用户浏览器的控制。Bug现象:新增物品时,物品名称输入一段JavaScript代码,在提交时此代码被执行。如:输入<script>alert(“这是测试Xss攻击”)</script>,在提交时会弹出alert框。2、业务方面的bugBug现象:批量导入的物品都不能通过建议词匹配出。业务背景:物品添加有两种方式,一种是excel批量导入,另一种是在系统中直接添加。新增采购订单物品名称、编号有建议词,因为需求变化,只有物品类型=采购才出现建议词。而导入的物品却没有添加“类型”字段。3、Get请求报h...
            0 0 1026
            分享
      • 51testing软件测试圈微信