package com.testscripts;
import com.thoughtworks.selenium.*;
import org.openqa.selenium.server.SeleniumServer;
import org.testng.annotations.*;
import static org.testng.Assert.*;
import java.util.Random;
/**
* @author 叶赫华 2010年5月
*/
public class VoteQQ extends SeleneseTestCase {
@Test
public void testVote() throws Exception {
SeleniumServer seleniumserver = new SeleniumServer();
seleniumserver.start();
System.out.println(seleniumserver.getPort());
Selenium selenium = new DefaultSelenium("localhost",4444,"*firefox", "http://tsingtao.qq.com");
selenium.start();
selenium.setTimeout("60000");
selenium.open("/user/list?order=1&page=1");
selenium.click("link=登录");
Thread.sleep(2000);
selenium.selectFrame("login_frame");
selenium.type("u", "1234567890");
selenium.type("p", "********");
//selenium.type("verifycode", "udfz");
selenium.click("login_button");
selenium.click("close");
Thread.sleep(2000);
selenium.selectFrame("relative=up");
int i, intIndividualCount, intRandNumber, intVoteCount = 10;
intIndividualCount = selenium.getXpathCount("//html/body/div[@id='warp']/div[@class='umain']/div/div[2]/div[@class='for_div']").intValue();
System.out.println("intIndividualCount is:" + intIndividualCount);
Random rand = new Random();
for (i = 0; i < intVoteCount; i ++){
intRandNumber = rand.nextInt(intIndividualCount - 1);
System.out.println("intRandNumber is:" + intRandNumber);
String strIndividualName = selenium.getText("//html/body/div[@id='warp']/div[@class='umain']/div/div[2]/div[@class='for_div'][" + String.valueOf(intRandNumber + 1) + "]/dl/dd/p[1]");
selenium.click("//html/body/div[@id='warp']/div[@class='umain']/div/div[2]/div[@class='for_div'][" + String.valueOf(intRandNumber + 1) + "]/dl/dd/p[3]/a[1]/img");
selenium.selectFrame("login_frame");
Thread.sleep(2000);
selenium.click("close");
System.out.println("strIndividualName is:" + strIndividualName);
Thread.sleep(2000);
selenium.selectFrame("relative=up");
}
selenium.stop();
seleniumserver.stop();
}
}相关推荐
c# 开发串口调试助手 Visual Studio 2019
串口调试助手是用于在开发、测试和调试串口通信应用程序时进行串口数据的监视和交互的工具。
selenium+chromdriver获取AJAX数据
注:本文参考了网易云知了课堂课件笔记。 AJAX定义 AJAX(Asynchronouse JavaScript And XML)异步JavaScript和XML。在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用Ajax)如果需要更新内容,必须重载整个网页页面。因为传统的在传输数据格式方面,使用的...
CST毫米波雷达ADAS仿真:从直角反射器到距离多普勒(RD图)的实战解析
本文通过CST Studio Suite实战解析毫米波汽车雷达ADAS仿真,详细演示了从构建直角反射器目标、参数化定义速度、进行参数扫描到生成距离多普勒图(RD图)的全过程。文章深入探讨了雷达关键参数(如距离分辨率、速度分辨率)的设计权衡与工程逻辑,并提供了单位统一、速度范围设定等实用避坑指南,帮助工程师高效完成雷达系统性能的前期验证与优化。
selenium driver 发送ajax请求
request_url = 'http://www.xxx.com' data = { 'p1': 'p1' } data_str = urlencode(data) print(data_str) ajax_query = """ var xmlhttp=new XMLHttpRequest(); xmlhttp.open(\"POST\",\"%s\",false); ...
【OpenClaw从入门到精通】第60篇:多智能体协同实战——用“龙虾”搭建你的数字员工团队(2026企业版)
2026年AI Agent企业落地的核心趋势,正从“单Agent单兵作战”转向“多智能体协同组网”。本文以全球开发者先锋大会“百虾大战”真实案例为蓝本,深度拆解OpenClaw多智能体协同的技术内核——三层解耦架构(模型层-技能层-网关层),系统搭建包含项目经理、架构师、执行者、质量把关者的4大核心Agent团队。通过三种主流协作架构对比、全链路配置代码实操、故障自愈实战演练,结合电商新品上架虚拟场景全流程演示,解决企业多Agent部署中的权限隔离、任务协同、运维自治三大核心痛点。
红队攻防渗透技术实战流程:云安全之云原生安全:特权模式和挂载模式
红队云攻防实战1. 什么是云 1. 什么是云
爬虫Selenium与Ajax
目录AjaxAjax概念Ajax三个步骤Selenium使用方法声明浏览器对象定位元素访问页面获取页面代码页面交互执行JavaScriptselenium获取国家药监局首页的企业信息 现在大部分的网站,都使用一种叫做Ajax的技术来加载一些数据,简单的爬虫爬取的界面是没有Ajax加载的界面。简单爬虫无法直接获取Ajax加载的数据,还有去获取Ajax的URL再去获取里面的数据 获取AjaxURL时我们发现AjaxURL有以下缺点: 既冗长又复杂 经过加密 具有时效性 解决方法: 我们使用到Selenium来
UG NX二次开发(C++)-NX2406系列二次开发编程模板配置
前面已经写了有关UG NX二次开发编程模板配置的文章,但是由于NX2406/2412系列的版本中,在UGOpen文件夹中没有了vs_files文件夹了,而是采用了VSIX Project的方式配置(其适用于VS2019),在VS2022中不能正确的配置。我结合以前配置模板的经验和现在的配置方式讲一下NX2406系列二次开发编程模板的配置。我把相应的编程模板放在资源文件UG NX二次开发编程模板(基于NX2406版本制作)中,方便大家下载使用。
Selenium爬虫实践:ajax请求抓包、浏览器退出
Selenium爬虫实践:ajax请求抓包、浏览器退出 2022-04-07 16:00·软件测试木木 前言 最近在搞公司内部系统,累的一批,需要从另一个内部系统导出数据存到数据库做分析,有大量的数据采集工作,又没办法去直接拿到那个系统的接口,太难了,只能爬虫,但是cookie还经常失效,为了不每次登录失效就来找我重新注入Cookie,我写了一个手机版的网页,用来控制后台的selenium自动登录,截取token和cookie。 ajax请求抓包方案 搜索资料的过程真的痛苦,不
【图像去噪】论文复现:灵感源自MAE!进一步解决BSN的局限性,破坏真实噪声的空间相关性!AMSNet的Pytorch源码复现,跑通源码,原理详解!
论文题目:Asymmetric Mask Scheme for Self-Supervised Real Image Denoising —— 自监督真实图像去噪的非对称掩码方案【图像去噪】论文精读:Asymmetric Mask Scheme for Self-Supervised Real Image Denoising(AMSNet)AMSNet是基于PyTorch Lightning CLI深度学习框架编写的,比较适合复杂的大型任务,复用很方便,但是安装和环境配置问题太多。
AI上推荐 之 逻辑回归模型与GBDT+LR(特征工程模型化的开端)
1. 前言 随着信息技术和互联网的发展, 我们已经步入了一个信息过载的时代,这个时代,无论是信息消费者还是信息生产者都遇到了很大的挑战: 信息消费者:如何从大量的信息中找到自己感兴趣的信息? 信息生产者:如何让自己生产的信息脱颖而出, 受到广大用户的关注? 为了解决这个矛盾, 推荐系统应时而生, 并飞速前进,在用户和信息之间架起了一道桥梁,一方面帮助用户发现对自己有价值的信息, 一方面让信息能够展现在对它感兴趣的用户前面。 推荐系统近几年有了深度学习的助推发展之势迅猛, 从前深度学习的传统推荐模型(协
selenium高级应用
这意味着Ajax可以在不重新加载整个网页的情况下,对网页的某部分内容进行更新。搜狗搜索的搜索框使用了Ajax。单击一下搜狗搜索框,切换到搜索框后,会弹出推荐搜索的热词,这个效果就是Ajax效果。上述代码先在搜索框中输入了“storm”,然后从匹配的选项中选择了带有“形容词”字样的选项,再进行搜索操作(搜索“storm+形容词”)。在实际项目中,你可能会遇到以下场景:在某些页面中需要从左到右拖动滑块进行验证,然后才能进行下一步操作。可以看出,无论是滑块本身,还是滑块所在的框,都是div元素。
淘宝母婴用品数据挖掘及可视化分析研究
1. 背景介绍 在当今的电子商务时代,母婴用品市场已经成为了各大电商平台的一片蓝海。淘宝作为中国最大的电子商务平台,其上的母婴用品交易数据自然引人关注。理解这些数据,可以帮助商家更好地制定营销策略,也可以帮助消费者更好地选择产品。因此,本文将对淘宝母婴用品的数据进行深入的挖掘和分析。 1.1 电子商务的
selenium等待时间处理
Selenium 是一个健壮的工具集合,跨很多平台支持针对基于 web 的应用程序的测试自动化的敏捷开发。它是一个开源的、轻量级的自动化工具,很容易集成到各种项目中,支持多种编程语言,比如 .NET、Perl、Python、Ruby 和 Java™ 编程语言。 利用 Selenium 测试 Ajax 应用程序 Asynchronous JavaScript. and XML (
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
IMSL CNL 7.0.0 (x86-64)Crack
IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件
Selenium 自动化测试工具
背景知识 在讨论 Selenium 之前,我要介绍关于以下三个话题的一些背景知识,因为这些话题虽然不是本文的主题,但是和本文密切相关: 持续集成 Ajax Ruby/Ruby on Rails 持续集成 持续集成的目标是自动化构建和测试过程,以便每天自动运行一次或多次这些过程,而不是每个月手动地运行一次。使用持续集成的最大好处是,代码的更改会定期地自动被集成。如果系统受...
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
selenium实战
一 搭建一个web maven项目 https://blog.youkuaiyun.com/u013521220/article/details/80585098 二 增删改查 三 web开发 四 页面自动化测试
霍尼韦尔SoftMaster使用说明
霍尼韦尔SoftMaster使用说明
利用 Selenium 自动化 web 测试【步骤详解】
Selenium 是一个健壮的工具集合,跨很多平台支持针对基于 web 的应用程序的测试自动化的敏捷开发。它是一个开源的、轻量级的自动化工具,很容易集成到各种项目中,支持多种编程语言,比如 .NET、Perl、Python、Ruby 和 Java™ 编程语言。
python爬虫-----Ajax/selenium爬虫
文章目录Ajax/selenium爬虫一、为什么用Ajax二、什么是Ajax三、Ajax怎么分析页面四、基于Ajax和requests采集器的微博爬虫五、基于selenium实现爬虫 Ajax/selenium爬虫 一、为什么用Ajax 1. 浏览器中可看到正常显示的数据,但使用requests得到的结果并没有。 这是什么原因呢? requests获取的是原始的HTML文档,而浏览器中的页面是经过...
使用selenium测试zk组件技巧
对zk开发的ajax应用,在使用selenium这样的自动化测试工具测试时会遇到很多困难。这里简单了总结了几点遇到的问题和解决办法: [list] [*]快速寻找到某个组件 [/list]zk组件生成的html代码很乱,有一点很恼人的是,其中每个Html元素的id号不是固定的,而是每次刷新页面都会变化。 这直接导致selenium.click("id=xxx")这样的代码不能使用了,要得到...
Selenium测试Ajax程序
上周末参加了Qclub的百度技术沙龙,听了百度的孙景卫讲了Web自动化测试,讲的非常好,然后在小组讨论时又有幸座在了一起。我们讨论的一个内容,就是Ajax应用程序比原来的非Ajax程序更不易测试,这里有两个主要原因。 第一:Ajax使得基于纯录制的方式无法工作,因为录制一个操作,这次返回需要5秒钟,下次会更多或更少。 第二:一些测试工具是基于原来非Ajax程序来开发的,后面没做对应的升级。 ...
【转载】Selenium 处理页面的等待时间
Selenium 是一个健壮的工具集合,跨很多平台支持针对基于 web 的应用程序的测试自动化的敏捷开发。它是一个开源的、轻量级的自动化工具,很容易集成到各种项目中,支持多种编程语言,比如 .NET、Perl、Python、Ruby 和 Java™ 编程语言。 利用 Selenium 测试 Ajax 应用程序 Asynchronous JavaScript. and XML (
Python自动化测试中定位隐藏菜单元素的策略
!在进行Python自动化测试时,尤其是使用Selenium等工具对Web应用进行测试时,可能会遇到某些元素被隐藏的问题。这使得元素定位和交互变得复杂。然而,通过一些技术手段,我们可以高效地定位这些隐藏元素。
用 Selenium 自动化验收测试
用 Selenium 自动化验收测试 http://www.ibm.com/developerworks/cn/java/wa-selenium-ajax/ 中文参考文档 http://wiki.springside.org.cn/display/springside/Selenium+Reference selecnium ide 的使用。。。中文说明。。。。。 h...
自动化测试框架 splinter安装
简介 Spliter是一个用Python开发的开源工具,用于测试Web应用程序。它允许您自动执行浏览器操作,例如访问URL并与其项交互。Spliter是现有浏览器自动化工具(如Selenium和Zope.testBrowser)之上的抽象层。它有一个高级的API,使得编写Web应用程序的自动化测试变得更容易。学了Splinter,断果放弃selenium。2018年笔记整理。 其特点如下: ...
使用Selenium抓取网页动态内容
Selenium 是一个自动化测试工具,支持多种浏览器,包括 Chrome、Firefox、Edge 等,具有强大的浏览器自动化能力,可以用于Web应用程序的自动化测试、数据挖掘等领域。
8060



被折叠的 条评论
为什么被折叠?



