selenium使用开始有点感觉了

装selenium已经有一段时间了,测试了好久的手动测试啊,一直没有用,一方面是selenium版本的升级,导致我找不到Java,结果就早早的放弃了,另一方面,总觉得录制了也没什么用户,还要开一大堆的工具,很麻烦,今天突然想,把拍客做成自动化测试吧,就一点点的写程序,慢慢觉得有点意思了哈。

 

一开始只知道用录制的程序,没尝试过里面还能写Java了,这是第一次尝试,还行吧,这个程序很简单,不难,(*^__^*) 嘻嘻……给大家分享一下,顺便记录自己的成长。希望自己一点点的成长,O(∩_∩)O~

 

 

package com.jiaoyu.paike;

 

import com.thoughtworks.selenium.*;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import java.util.regex.Pattern;

 

public class Paikeshouye extends SeleneseTestCase {

@Before

public void setUp() throws Exception {

selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://jiaxiaoquan.staff.139.com/");

selenium.start();

}

 

@Test

public void testPaikeshouye() throws Exception {

this.login();

this.sendPhotos();

Thread.sleep(10000);

this.forword();

this.comment();

this.deletePhoto();

// this.batchPhotos();

}

 

/**

* 登陆

*/

public void login(){

selenium.open("webroot/apps/paike/index.php?s=/Index/index/");

selenium.type("mobile", "13948895822");

selenium.type("passwd", "111111");

selenium.click("//input[@value='登 录']");

selenium.waitForPageToLoad("30000");

}

 

/**

* 发单张拍客

*/

public void sendPhotos(){

selenium.type("pkimg", "D://pic//猫猫衣服//2.jpg");

selenium.type("pkcontent", "一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十");

selenium.click("link=表情");

selenium.click("//img[@title='呲牙']");

selenium.click("//img[@title='呲牙']");

selenium.click("//img[@οnclick=/"BQinsert(this,3,'pkcontent');/"]");

selenium.click("//img[@title='折磨']");

selenium.click("//img[@title='难过']");

selenium.click("//img[@title='流汗']");

selenium.click("//img[@title='大哭']");

selenium.click("//img[@title='胜利']");

selenium.click("//img[@title='微笑']");

selenium.click("type-close_BQ");

selenium.click("link=主题");

selenium.click("link=主题");

selenium.click("link=主题");

selenium.click("link=主题");

selenium.click("link=主题");

selenium.click("link=主题");

selenium.click("link=发布");

selenium.click("pkcontentsubmit");

selenium.waitForPageToLoad("30000");

}

 

/**

* 转发

*/

public void forword(){

selenium.click("id=reforwar266");

selenium.type("forpkcontent", "一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十");

selenium.click("nowpk_comment");

selenium.click("//table[@id='tblforwardpkcontent']/tbody/tr[2]/td[2]/div/div[2]/p[3]/a[1]/span");

selenium.waitForPageToLoad("30000");

assertEquals("转发成功", selenium.getAlert());

}

 

/**

* 评论

* @throws Exception

*/

public void comment() throws Exception{

selenium.click("recomment248");

Thread.sleep(10000);

selenium.type("comment_replay248", "so beautiful。。。。。。。。。。。。。。。。");

Thread.sleep(10000);

selenium.click("//input[@value='评论']");

Thread.sleep(10000);

}

public void deletePhoto(){

selenium.click("//a[@οnclick=/"return deleteContent('/webroot/apps/paike/index.php?s=/Index/deletepkcontent/pkcid/269')/"]");

assertTrue(selenium.getConfirmation().matches("^是否确定删除这条拍客[//s//S]$"));

selenium.click("link=下一页");

selenium.waitForPageToLoad("30000");

selenium.chooseCancelOnNextConfirmation();

selenium.click("link=删除");

assertTrue(selenium.getConfirmation().matches("^是否确定删除这条拍客[//s//S]$"));

}

 

/**

* 批量上传拍客

* 失败:抓取不到上传了哪些图片

*/

public void batchPhotos(){

selenium.click("//div[5]/a/span");

selenium.waitForPageToLoad("30000");

selenium.click("//div[2]/a/b");

selenium.click("pkcontent");

selenium.type("pkcontent", "#狗狗#");

selenium.click("//div[@id='default_type_BQ']/a/b");

selenium.click("//img[@title='呲牙']");

selenium.click("pkcontent");

selenium.type("pkcontent", "#狗狗#(呲牙)I like dog~~");

selenium.click("link=发布");

assertEquals("成功上传9个拍客", selenium.getAlert());

}

 

@After

public void tearDown() throws Exception {

selenium.stop();

}

}

 

在录制的时候,碰到两个问题,在网上也没有搜集到资料,如果有高手,麻烦指导一下拉,非常感谢~

1. selenium录制不到js,flash吗?如何解决

2. 为什么回放的时候不加Thread.sleep()就会报找不到Element,加上后就能跑了呢?

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值