selenium通过WebDriverWait实现ajax测试 AndroidDriver driver = new AndroidDriver(); driver.get("http://m.taobao.com"); WebElement inputBox = driver.findElement(By.id("J_SKey")); inputBox.sendKeys("1"); new WebDriverWait(driver, 10).u…
当前位置:我的异常网» Web前端 » selenium经过WebDriverWait实现ajax测试 selenium经过WebDriverWait实现ajax测试 www.MyException.Cn  网友分享于:2013-09-12  浏览:217次   selenium通过WebDriverWait实现ajax测试 AndroidDriver driver = new AndroidDriver(); driver.get("http://m.taobao.com"); We…
加载中,请等待div: <div id="load" class="center-in-center" style="display:none;"> <img src="../resources/images/loader.gif" />加载中,请等待... </div> 确定重置按钮: <div class="form-group row"> <div…
WebDriverWait(driver, 10)10秒内每隔500毫秒扫描1次页面变化,当出现指定的元素后结束. http://fox1984.iteye.com/blog/1225265new WebDriverWait(driver, 10).until (new ExpectedCondition<Boolean>() {    @Override    public Boolean apply(WebDriver driver) {        Boolean result = f…
http://blog.csdn.net/aerchi/article/details/8055913 WebDriverWait类和ExpectedCondition…
因需要收集页面数据,遂准备使用selenium爬取瓦斯阅读页面, 瓦斯网站使用的是ant design,元素定位非常困难,页面元素都没有ID,现在还只是能做到操作登录,不能自动打开订阅,查询某公众号, 下面的代码能实现打开登录窗,自动填写用户名密码登录,其中那个登录按钮也是找不到元素的,使用的办法是先获取当前活动的元素,再通过发送TAB和ENTER键完成对“登录”点击操作的: # 瓦斯的查询url url = 'https://w.qnmlgb.tech' # 通过 get 方法打开查询页 dr…
selenium等待特定元素加载完毕 is_disappeared = WebDriverWait(driver, 8, 0.5, ignored_exceptions=TimeoutException).until(lambda x: x.find_element_by_id("id").is_displayed())…
GUID: 全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.GUID主要用于在拥有多个节点.多台计算机的网络或系统中.在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID.GUID 的总数达到了2^128(3.4×10^38)个,所以随机生成两个相同GUID的可能性非常小,但并不为0.GUID一词有时也专指微软对UUID标准的实现. 格式: GUID 的格式为“xxxxxxxx-xxxx-xxxx-x…
ajax二次封装之异步加载 ajax异步加载会导致在数据未加载回来就读取数据,然后出现数据为空的报错.在ajax封装时,将ajax直接改为同步,虽然可以解决报错,但是会导致页面渲染被阻塞,接口反应时间较长后,会极大的影响用户体验. 在做一个展示系统的时候,数据库数据较多,页面报表调用接口较多,倒是页面刷新后需要4-5s去加载,所以将ajax封装的方法做了回调. 框架(vue) 在项目中封装了一个全局方法:ajaxData.js exports.install = function (Vue, o…
前置步骤: 上一篇的Python单元测试框架unittest,我认为相当于功能测试测试用例设计中的用例模板,在自动化用例的设计过程中,可以封装一个模板,在新建用例的时候,把需要测试的步骤添加上去即可: 而现在要做的就是学习如何定位页面元素,告诉系统我要找到什么UI元素,然后才能进一步的采取其他措施: 其实不想写这篇内容,可是又觉得如果去官方文档找信息又效率慢,那么我就将常用的步骤归纳,那样可以快速查阅解决问题. 参考英文官方资料:http://selenium-python.readthedoc…
学习目的: 掌握iframe矿建的定位,因为前端的iframe框架页面元素信息,大多时候都会带有动态ID,无法重复定位. 场景: 1. iframe切换 查看iframe 切换iframe 多个iframe的问题 2.多窗口iframe 获取句柄 切换句柄 正式步骤: step1: 如果iframe中含有动态ID的情况规避方法 问题截图 规避代码: # -*- coding:utf-8 -*- """ 模拟登陆126邮箱 """ from sel…
对于自动化测试,尤其是UI的自动化测试.是很多做黑盒功能测试的同学,入门自动化测试一个最为直观的或者说最容易理解的途径之一. 对于手工测试和自动化测试的优劣,网上有很多论述,在这里不作展开讨论.但是,让测试人员解放生产力,提高效率,把精力关注与最为重要的核心业务逻辑与测试设计上,是每个测试团队所必需要关注的.因此,在适当的范围内开展自动化测试,是可以提高整个测试团队的生产率的. 对于Selenium,这个东西是一个浏览器应用程序测试工具.之所以选择它做WebUI的自动化测试主要是因为它有以下两大…
在做selenium webdriver  在做UI自动化时,有些页面时使用懒加载的形式显示页面图片,如果在不向下移动滚动条时,获取到的图片会是网站的默认图片和真实的图片不相符. 1.滑动滚动条 1.1如果滚动条是针对整个HTML可以用如下方式: js = "var q=document.documentElement.scrollTop=10000" # documentElement表示获取根节点元素 self.driver.execute_script(js) 1.2如果滚动条是…
总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式因为参数的不同,不会产生这个问题]而FF下不会出现这种情况.为了不受缓存影响,可以这样做: IE访问策略: Internet选项--浏览历史记录--设置-- Internet 临时文件的选项改为每次访问网页时也可以 1: 在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数…
Model: namespace MvcApplication1.Models { public class Team { public string Preletter { get; set; } public string Name { get; set; } } } 通过jQuery异步加载部分视图 Home/Index.cshtml视图中: @{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout.csh…
过完年了,又要有新的项目了,趁暴风雨前的宁静,就把之前让我挺头疼的ajax加载给总结了一下.在此分享. 声明下:笔者对于ajax也是新手,如有更好的写法或可以优化的写法,还望指正! 项目需求: 移动端访问,进行选择答题,初始为五道题,当滑动到底部的时候,会有一个提示,向下滑动继续答题. 滑动后ajax加载,每次加载五道题.加载出十五道题的时候,停止加载,并隐藏提示,显示出 提交答案的按钮. (给人感觉永远答不完题一样,感觉这种需求纯属扯淡) 但是再扯淡也得实现不是..直接贴代码:我个人感觉写的复…
1.数据库找一张表: 颜色表2.主页面主页面的代码用到tbody:TBODY作用是:可以控制表格分行下载,从而提高下载速度.(网页的打开是先表格的的内容全部下载完毕后,才显示出来,分行下载可以先显示部分内容,这样会减少用户等待时间. 使用TBODY的目的是可以使得这些包含在内的代码不用在整个表格都解析后一起显示,就是说如果有多个行,那么如果得到一个TBODY行,就可以先显示一行. BODY是HTML的文本体,一个HTML文件,只有一个BODY,而在TABLE中可以有多个TBODY.TBODY这个…
Bookstrap:美化页面: Bootstrap是Twitter推出的一个开源的用于前端开发的工具包.它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架.Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成.Bootstrap一经推出后颇受欢迎,一直是GitHub上的热门开源项目,包括NASA的MSNBC(微软全国广播公司)的Breaking News都使用了该项目.只需要引用一些定义好的类,也就是c…
因为做的微信端的网页,所以在显示后台数据的时候,要么分页,要么全部加载数据,开始分页对于用户来说,其实体验不是很好,毕竟要去不断的点击下一页,但是如果我把全部数据读取出来的话,但用户可能也就看前面几条而已,那么就会造成性能的大大浪费. 所以我就上网找了ajax懒加载方面的内容,成功实现了,在用户滚动的时候判断是否到达页面底部,是的话就通过ajax请求数据,然后显示出来. javascript代码 <script type="text/javascript"> $(funct…
今天,尝试用代码指定自动化测试用例. 将测试record导出为C# 代码后,使用FF的drive ,发现执行一直失败,提示无法加载元素.顿时一种无力感袭来啊.还是硬着头皮找方法.尝试id name xpath 等各种的加载方式.还是不行,baidu google 找到一堆的英文,中文资料,查了半天,还是看不懂啊.啊啊啊,太崩溃了,文档大部分的意思,可能是html中有ifarme 在加载的时候,要先找ifarme ,再找元素.改了写法还是不行,有个帖子,中文的,顿感亲切多了,上边说是页面还是没加载…
Ajax是Asynchronous JavaScript and XML的缩写,其核心是通过XMLHttpRequest对象,以一种异步的方式,向服务器发送数据请求,并通过该对象接收请求返回的数据,从而完成人机交互的数据操作.在jQuery中,有大量的函数与方法为Ajax技术提供支持.   jQuery加载异步数据: $("#id").load():加载html格式的数据 $.getJSON():加载json格式的数据 $.getScript():加载js格式的数据 $.get():加…
首先请看一个Jquery.ajax的例子 $.ajax({ type: "GET", url: "/api/SearchApi/GetResults", dataType: "json", data:{ filter: "test", pageNumber: 1, pageSize: 5 }, success: function(data){ // do something }, complete: function(XMLH…
当你在代码中使用Response.Redirect();  或者Response.Write();难免会遇到Sys.WebForms.PageRequestManagerParserErrorException:的问题,这次遇到的问题错误提示: Sys.WebForms.PageRequestManagerParserErrorException: The message received from the server could not be parsed. Common causes fo…
前台代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Products.aspx.cs" Inherits="_0726Test.Product.Products" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <…
很多时候我们需要引入框架来开发项目,这时我们可能会遇到页面还没加载完源码出来了的问题,给用户一种不好的视觉体验,这是便需要loading加载了,来完善用户体验! /*loading.js*/ // 加载HTML图 var _LoadingHtml = '<div id="loadingDiv" style="position:fixed;left: 0;top: 0;right: 0;bottom: 0;z-index: 99999;background-color:…
这个问题与语言无关,对于现代浏览器来说,使用 window.performance.timing这个对象就好了. 用execute_script方法(java用executeScript)方法执行 window.performance.timing. 一般来说,下面的值都是可以拿到的 connectEnd connectStart domComplete domContentLoadedEventEnd domContentLoadedEventStart domInteractive domL…
在chrome快捷键右键--属性 “ --allow-file-access-from-files ”,前面用空格隔开.然后应用--确定.…
简单: <!DOCTYPE html> <html> <head> <title>ExtJs</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <link rel="stylesheet" type="text/css" href="Ex…
利用selenium的可以执行javascript脚本的特性,我写了一个java版本的获得页面加载速度的代码,这样你就可以在进行功能测试的同时进行一个简单的测试页面的加载速度的性能测试. 我现在的项目用途主要是在功能测试的同时获得各个测试页面的加载速度,看看哪些页面的加载速度比较慢,如果加载的时间太慢,我就专门针对这个页面使用YSlow工具去检查一下这个页面,然后给出这个页面加载比较慢的建议,提交给开发人员,让他们自己去看看如何解决这个问题? 通过调用通用的浏览器的Performance.tim…