模拟用户点击链接

 1 package tool;
 2     import org.junit.Assert;
 3     import org.openqa.selenium.WebDriver;
 4     import org.openqa.selenium.chrome.ChromeDriver;
 5     import org.openqa.selenium.firefox.FirefoxDriver;
 6     import org.openqa.selenium.ie.InternetExplorerDriver;
 7     import org.openqa.selenium.remote.DesiredCapabilities;
 8     /**
 9      * 公共设置 浏览器
10      * @author nxy
11      *
12      */
13     public class SetBrower {
14         /**
15          * 设置火狐浏览器
16          * @param browerDriverPath
17          * @return
18          */
19         public WebDriver firefoxBrower(String browerDriverPath){
20             WebDriver firefoxWD ;
21             //指定驱动路径
22             System.setProperty("webdriver.firefox.bin", browerDriverPath);
23             //新建一个firefox 浏览器driver
24             firefoxWD = new FirefoxDriver();
25             return  firefoxWD;
26         }
27         /**
28          * 设置chrome浏览器
29          * @param browerDriverPath
30          * @return
31          */
32         public WebDriver chromeBrower(String browerDriverPath){
33             WebDriver chromeWD ;
34             System.setProperty("webdriver.chrome.driver", browerDriverPath);
35             //这里需要注意的是 放的地址是  chromedriver 的存放地址
36             //新建一个google 浏览器driver
37             chromeWD = new ChromeDriver();
38             return chromeWD;
39
40             }
41         /**
42          * 设置ie浏览器
43          * @param browerDriverPath
44          * @return
45          */
46
47         public WebDriver ieBrower(String browerDriverPath){
48             WebDriver ieWD ;
49             System.setProperty("webdriver.ie.driver", browerDriverPath);
50             //这里需要注意的是 放的地址是  IEDriverServer 的存放地址
51             DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
52             ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
53             //新建一个ie 浏览器driver
54             ieWD = new InternetExplorerDriver(ieCapabilities);
55             return ieWD;
56
57
58
59         }
60         /**
61          * 测试上面的方法
62          * @param args
63          * @throws InterruptedException
64          */
65
66         public static void main(String[] args) throws InterruptedException {
67             SetBrower test = new SetBrower();
68             //WebDriver wd= test.chromeBrower("C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
69             WebDriver wd= test.firefoxBrower("D:\\Program Files\\firefox\\firefox.exe");
70             //WebDriver wd= test.ieBrower("C:\\Program Files (x86)\\Internet Explorer\\IEDriverServer.exe");
71             //打开网站
72             wd.get("http://ip:端口/项目名称/");
73
74             wd.quit();
75
76         }
77
78     }
package entity;

public class UserTest {
    private int id;
    private String userID;
    private String loginId;
    private String deptId;
    private String deptName;
    private String compName;
    private int staus;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUserID() {
        return userID;
    }
    public void setUserID(String userID) {
        this.userID = userID;
    }
    public String getLoginId() {
        return loginId;
    }
    public void setLoginId(String loginId) {
        this.loginId = loginId;
    }
    public String getDeptId() {
        return deptId;
    }
    public void setDeptId(String deptId) {
        this.deptId = deptId;
    }
    public String getDeptName() {
        return deptName;
    }
    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }
    public String getCompName() {
        return compName;
    }
    public void setCompName(String compName) {
        this.compName = compName;
    }
    public int getStaus() {
        return staus;
    }
    public void setStaus(int staus) {
        this.staus = staus;
    }
    public UserTest(int id, String userID, String loginId, String deptId,
            String deptName, String compName, int staus) {
        super();
        this.id = id;
        this.userID = userID;
        this.loginId = loginId;
        this.deptId = deptId;
        this.deptName = deptName;
        this.compName = compName;
        this.staus = staus;
    }
    public UserTest() {
package db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * @author nxy
 * @创建时间 2014年10月21日-下午1:40:54
 * @类名 DBUtil.java
 */
public class DBUtil {
    public static Connection getConnection(String username, String password,
            String url) throws Exception {
        Connection connection = null;
        Class.forName("com.mysql.jdbc.Driver");
        connection = DriverManager.getConnection(url, username, password);
        return connection;
    }

    public static void close(Connection conn) throws SQLException {
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
                throw e;
            }
        }
    }

    public static Connection getConn() throws Exception {
        Connection connection = null;
        String username = "root";
        String password = "******";
        String url = "jdbc:mysql://localhost:3306/databasename?useUnicode=true&characterEncoding=utf-8";
        Class.forName("com.mysql.jdbc.Driver");
        connection = DriverManager.getConnection(url, username, password);
        return connection;
    }

}


package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import db.DBUtil;
import entity.UserTest;

public class UserDaoImpl {

    private static final String FIND_ALL_USER_LOGIN = "SELECT id,user_id,login_id,dept_id,dept_name,compy_name,status FROM user_login where status =0";
    private static final String UPDATE_USER_STATUS = "update  user_login set status = 1 where login_id =?";

    /**
     * 得到所有将要登录的用户记录
     * @return
     * @throws Exception
     */
    public List<UserTest> findAllUsers() throws Exception{
        Connection conn = null;
        conn = DBUtil.getConn();
        PreparedStatement prep = conn.prepareStatement(FIND_ALL_USER_LOGIN);

        ResultSet   rs = prep.executeQuery();
        List<UserTest> listAll = new ArrayList<UserTest>();

        while(rs.next()){
            UserTest bc = new UserTest();
            bc.setId(rs.getInt("id"));

            bc.setCompName(rs.getString("compy_name"));
            bc.setDeptId(rs.getString("dept_id"));
            bc.setDeptName(rs.getString("dept_name"));
            bc.setLoginId(rs.getString("login_id"));
            bc.setStaus(rs.getInt("status"));
            bc.setUserID(rs.getString("user_id"));

            listAll.add(bc);
    }
        DBUtil.close(conn);
        return listAll;

    }
    /**
     * 根据loginid更新 是否已登录的状态
     * ststus= 1 说明已经登录完成
     * @param bc
     * @return
     */
    public UserTest UpdateLoginStatus(UserTest bc){
         Connection conn = null;

           try {
            conn = DBUtil.getConn();
            PreparedStatement pst = conn.prepareStatement(UPDATE_USER_STATUS);
            pst.setString(1, bc.getLoginId());
            pst.executeUpdate();
            DBUtil.close(conn);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return bc;
    }

    public static void main(String[] args) throws Exception {

        UserDaoImpl usertest  = new UserDaoImpl();

        List<UserTest> ll = usertest.findAllUsers();

        for (UserTest userTest2 : ll) {

            System.out.println(userTest2.getLoginId());

        }
    }
}
package autoTest;

import java.util.List;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;

import dao.UserDaoImpl;
import entity.UserTest;
import tool.SetBrower;

public class UserAction {

    public void UserAction( String   baseUrl,String loginId){

        SetBrower setBrower = new SetBrower();
        WebDriver driver=  setBrower.firefoxBrower("D:\\Program Files\\firefox\\firefox.exe");
        try{
        //baseUrl = "http://ip:端口/项目名称/manage/login/login!toTmplogin?nextUrl=%2Fguohua%2Freporttotal%2Ftotal!togoMoonReportPage";
        driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
         driver.get(baseUrl + "/homePage/homePage");
         driver.findElement(By.name("cmsUser.loginId")).clear();
         driver.findElement(By.name("cmsUser.loginId")).sendKeys(loginId);
         driver.findElement(By.cssSelector("input.loginbtn")).click();
         driver.findElement(By.linkText("国际资讯")).click();
            driver.findElement(By.linkText("能源企业")).click();
            driver.findElement(By.linkText("技术标准")).click();
            driver.findElement(By.linkText("技术管理")).click();
            driver.findElement(By.linkText("太阳能光热发电培训材料")).click();

        }catch(Exception e){
                 driver.findElement(By.linkText("退出")).click();
                 driver.quit();

            System.out.println(e);
                }
            }

    public static void main(String[] args) throws Exception {

        UserAction test = new UserAction();
        UserDaoImpl dao = new UserDaoImpl();
        List<UserTest> userTest = dao.findAllUsers();
        for (UserTest userTest2 : userTest) {
            String loginId = userTest2.getLoginId();
            int status = userTest2.getStaus();
            test.UserAction("http://ip:端口/项目名称", loginId);
            dao.UpdateLoginStatus(userTest2);

        }

    }
}
super();
    }

}
时间: 2024-08-11 03:24:22

模拟用户点击链接的相关文章

android 代码实现模拟用户点击、滑动等操作

/** * 模拟用户点击 * * @param view 要触发操作的view * @param x 相对于要操作view的左上角x轴偏移量 * @param y 相对于要操作view的左上角y轴偏移量 */private static void analogUserClick(View view, float x, float y) { if (view == null) { return; } LogUtil.e(TAG_POINT, "正在模拟点击操作:p->" + x +

Android编程实现点击链接打开APP功能示例

本文实例讲述了Android编程实现点击链接打开APP功能.分享给大家供大家参考,具体如下: 在Android中点击链接打开APP是一个很常见的需求.例如,电商为用户发送优惠券之后经常会下发一条短信:某某优惠券已发送到您的账户中,点击 xxx 链接即可查看!此时当用户点击链接之后会直接打开本地APP,进入相关页面. 功能实现: 1.在manifest中为相应的activity添加intent-filter: ? 1 2 3 4 5 6 7 8 9 10 11 12 <activity    an

使用appium模拟用户发送短信

一段简单粗糙的代码.主要是实现的功能是模拟用户发送短信的功能. python版本3.5.2 appium版本1.4.16.1 from appium import webdriver desired_caps = { 'platformName':'Android', 'platformVersion':'4.4.2', 'deviceName':'test', 'appPackage':'com.android.mms', 'appActivity':'com.android.mms.ui.C

手机网站点击链接触发颜色块的问题解决

引子 前段时间做微信页面的时候,一行内容做了2个链接,点击一个标签的时候,整个颜色块会闪一下,影响美观.需求针对这种情况来问我,能否把这个一闪的颜色去掉.我当时就想,这个怎么去?那我也不好直接回绝她,好吧,我试试吧!经过研究,百度的很多a标签都是一闪一闪的,有颜色块,但是淘宝和京东的手机端就没有这种情况,这是如何做到的呢? 研究 通过研究他们的代码发现,在根属性中,他们设置了这样的一个属性-webkit-tap-highlight-color:rgba(0,0,0,0). 下面解释一下什么是RG

[python]利用selenium模拟用户操作抓取天猫评论数据

准备: python3.5 安装selenium包 第一种方法: cmd里输pip install selenium,但是经常报错 第二种方法: 下载安装包-cmd进入解压路径-python setup.py install-报错permission denied-右键安全更改报错文件夹权限为完全控制-再次安装成功unknown error: unable to discover open pages-下载chromedriver放在环境变量目录下测试自动打开百度时提示"您使用的是不受支持的命令

UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等) - walterlv

原文:UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等) - walterlv UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等) 2018-12-30 14:08 UWP 中使用 WebView 时可以在网页中额外执行一些代码.于是你几乎可以在网页上做任何事情,那些你可以在浏览器控制台中做的事情. 本文将介绍做法. 本文内容 准备环境 执行 JavaScript 代码 模拟用户输入 JavaScript eval(string

jQuery中模拟用户操作

有时为了节省不想手动操作网页,但又想看到用户操作时的效果,可以用到jQuery提供的trigger方法.见下图代码 在不点击按钮时仍然想弹出this.value 我们只需要在后面加上.trigger("事件名称")就可以在不点击按钮的情形下看到用户点击按钮时看到的效果.这种方法的简写方法是用.事件名称()代替trigger("事件名称"),这种简写方法只适用于系统时间. 另外一种模拟方法是.triggerHandler(),这种方法是基于.trigger()的,只是

WEBBROWSER中模拟鼠标点击(SendMessage/PostMessage)

好久没有写文章,发一篇顶顶博客访问量.别人建议转一些比较好的代码也贴过来,但是我打算这里主要发自己原创的代码,所以么..流量该多少就多少吧... 回到主题,在webbrowser中点击某链接网上几乎都是用document对象模拟点击,这个方法基本能应对一般的情况,但是例如广告联盟的点击XXX就有检测机制(不多解释,你们懂的).所以完全模拟鼠标的点击事件就比较完美.于是我用了最常见的SendMessage. 接下来就要解决一个问题,webbrowser的句柄问题.从控件本身得到的句柄不是真正的浏览

解决移动端点击链接出现颜色块问题

移动端在点击链接跳转的时候会出现一个颜色块,看起来会闪一下,影响了用户体验.解决方法 就是添加一个css样式,改变其颜色,如下: -webkit-tap-highlight-color: rgba(0,0,0,0);