从事android客户端测试。微博:http://weibo.com/xingzunxi
发布新日志
-
2014-06-19 12:54:01
今天使用jenkins 跑robotium 时,程序报错,不能启动,提示找不到包。
修改方法,修改manifest 里面的包名和程序里面包名一致。
使用ant编译robotium时,注意要把测试程序的编码修改为UTF-8,在项目属性里面修改,否则中文时,会报错。
查看(1072)
评论(0)
收藏
分享
管理
-
2014-06-18 18:43:02
1.创建 build.xml文件:
使用命令:android update project -n 项目名称 -target -p 项目所在路径。
android list target 用来查看target
2. 进入项目所在目录,使用ant debug
3. 如果使用ant release ,需要自己添加证书及签名文件。
查看(915)
评论(0)
收藏
分享
管理
-
2013-06-26 23:41:53
今天编写自动化脚本时,我们的客户端分为两屏,一开始编写代码如下:
solo.scrollToSide(Solo.RIGHT),运行时发现不会自动向右滑动到第二屏,使用debug模式,程序可以自动运行,后来发现在前边加入了sleep等待就好用了。分析可能因为刚刚进入界面时,已经运行向右滑动的代码,但此时界面还没有完全显示出来,所以功能不生效。
查看(676)
评论(0)
收藏
分享
管理
-
2013-05-08 22:04:14
今天继续学习robotium,一个页面采用的是gridview实现的。view获取方式如下:
关键代码:
ArrayList<GridView> viewlist=solo.getCurrentViews(GridView.class);
int count = viewlist.get(0).getCount();
Log.v("roboutim", viewlist.size()+" "+ count);
View vault = viewlist.get(0).getChildAt(3);
solo.clickOnView(vault);
solo.sleep(time);
查看(668)
评论(0)
收藏
分享
管理
-
2013-05-06 12:38:17
昨天学习使用robotium写一个自动化例子时,一直报错。错误为:
Instrumentation run failed due to 'Process crashed.'
最后发现是Activity名称没有写对,一定要注意细节。
查看(9339)
评论(0)
收藏
分享
管理
-
2013-05-05 15:56:48
每次做完项目后,作为一个测试人员都要进行项目总结,只有不断的总结,改进之前项目中的不足,我们才能够不断的进步。
刚刚编写了一个测试总结,大概思路如下:
1.介绍一个此次项目的功能。
2.对项目中测试时间进行一个总结,分析时间是否合理,对今后项目计划的制定进行指导。
3.测试用例执行情况。
4.Bug情况
Bug是测试人员的一个重要输出物,我们一定要进行详细的分析。我主要看几个数据:
1)项目组每个测试人员提交Bug总数,每天提交bug数量
2)提交给项目组每个开发的bug情况。
3)整个项目的bug趋势图
4)遗留bug数目
5)延期修改Bug数目
6)not Bug 数目
7)重新打开Bug的数目
5.经验与教训:
一般分为两个方面,此次项目做的比较好的方面,待改进。
对于待改进的点,一定要落实执行。
备注:
不要为了总结而总结,针对项目中出现的问题一定要在今后的过程中加以改进,要不就不如不总结。
查看(575)
评论(0)
收藏
分享
管理
-
2013-05-03 10:46:00
最近开始学习Robotium,Robotium是一个测试android的自动化工具。
昨天学习使用了一下Robotium的截屏功能。
函数如下:
takeScreenshot
public void takeScreenshot()
- Takes a screenshot and saves it in "/sdcard/Robotium-Screenshots/". Requires write permission (android.permission.WRITE_EXTERNAL_STORAGE) in AndroidManifest.xml of the application under test.
- 当时自己写的时候认为比较简单,没有仔细看API,忘记在Manifest里面增加权限了。
- 注意是在被测试应用中增加此权限。
- 举例如下:
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
查看(1640)
评论(0)
收藏
分享
管理
-
2013-03-30 14:39:09
Android客户端的体积相对之前的symbian及j2me程序来说,大了不少,现在软件基本上都在5M以上。因此很多软件都支持安装到存储卡上。从代码实现上来说,非常简单,只需要在Manifest里面填上,android:installLocation="auto",就可以同时支持安装到存储卡上,android2.2及以上系统才支持。
安装存储卡上对于测试来说会存在两个问题:
1.不支持添加widget。
2.当存储卡切换为磁盘模式等时,程序功能会失效变为不可用状态。
查看(289)
评论(0)
收藏
分享
管理
-
2013-03-30 14:34:06
算了一下,有三年多没有写博客了,真是不应该呢,从今天开始准备继续更新我的博客。目前主要从事Android客户端测试,积累了一些经验。
查看(216)
评论(1)
收藏
分享
管理
-
2010-01-12 10:08:56
在手机客户端测试过程中,经常需要用到一些命令。下边是最常用的三个命令
在symbian平台上:
查看IMEI:*#06#
查看软件版本:*#0000#
手机恢复出场设置:*#7370#
查看(172)
评论(1)
收藏
分享
管理
-
2009-12-29 17:27:26
J2me程序分为两个包,一个是jad文件,一个是jar文件,JAD是软件配置信息文件,JAR才是真正的程序,可以通过pc套件把jad文件和jar文件都复制到手机里面,然后点击jad文件安装,也可以通过ota下载,把jad和jar文件放到服务器上,然后输入网址进行下载,输入网址最后的文件名为.jad
查看(192)
评论(0)
收藏
分享
管理
-
2009-12-26 14:36:12
查看(6)
评论(0)
收藏
分享
管理
-
2009-08-24 16:36:42
今天用loadrunner参数化后,回放时出现错误,错误提示为:Action.c(148): Error -27979: Requested form. not found [MsgId: MERR-27979]
经过分析找到原因为,参数化后,页面已经发生变化,和录制的时候sanpshot已经不一样了,所以提示错误,暂时没有找到解决的方法
继续学习loadrunner
查看(162)
评论(0)
收藏
分享
管理
-
2009-07-28 16:22:15
把mysql数据库里面的数据导入到Excel表格里面
Dim con,res,strcnn,cmd,sql
set con=CreateObject("adodb.connection")
Set res=CreateObject("adodb.recordset")
Set cmd=CreateObject("adodb.command")
strcnn="Driver={MySQL ODBC 3.51 Driver};server=localhost;database=testlink;user=root;option=3"
con.Open strcnn
Set cmd.ActiveConnection=con
cmd.CommandType=1
sql="Select * from users"
cmd.CommandText=sql
Set res=cmd.Execute()
Dim i
i=1
do while not res.eof
Dim Values1,values2
values1=res("login")
values2=res("password")
NewSheet.Cells(i+1,1).Value =values1
NewSheet.Cells(i+1,2).Value =values2
i=i+1
res.movenext
Loop
ExcelObj.ActiveWorkbook.Saveas "D:\text.xls"
ExcelObj.Quit
Set ExcelObj = Nothing
Set res = nothing
Set cmd.ActiveConnection = nothing
Set Cmd= nothing
查看(218)
评论(0)
收藏
分享
管理
-
2009-07-26 11:49:24
execname="D:\test1.xls"
Set bjexc=createobject("excel.application")
On error resume next
Set bjworkbook=objexc.workbooks.open("d:\test.xls")
If err.number<>0 Then
msgbox "打开失败"
End If
On error goto 0
objexc.activeworkbook.saveas execname, 1
objworkbook.close true
Set bjworkbook= nothing
Set bjexc= nothing
查看(362)
评论(0)
收藏
分享
管理
-
2009-07-23 17:08:46
Option Explicit
Dim arrRange
arrRange = ReadFile("D:\test.xls","test")
Msgbox arrRange(3,1)
Function ReadFile(sFilename,sSheetname)
Dim oExcel
Dim oSheet
Dim oRange
Dim arrRange
On error resume next
set Excel=CreateObject("Excel.Application")
If err.number<>0 Then
msgbox "未能初始化Excel"
Exit Function
End If
On Error Goto 0
On error resume next
oExcel.Workbooks.Open(sFilename)
If err.number<>0 Then
msgbox "打开excel 失败"
Exit Function
End If
On Error Goto 0
Set Sheet=oExcel.worksheets(sSheetname).usedRange
Set Range = oSheet.Range("A1:Z1000")
'把Excel数据转换到数组
arrRange = oRange.Value
' 关闭工作簿
oExcel.WorkBooks.Item(1).Close
' 退出Excel
oExcel.Quit
Set Excel = Nothing
' 返回包含Excel数据的数组
ReadFile = arrRange
End Function
查看(213)
评论(0)
收藏
分享
管理
-
2009-07-23 14:48:34
Browser("TestLink - Login").Page("TestLink - Login").WebEdit("login").Set "xing"
Browser("TestLink - Login").Page("TestLink - Login").WebEdit("password").SetSecure "4a67f8d1997f3be612a36c446be3"
Browser("TestLink - Login").Page("TestLink - Login").WebButton("Login").Click
Dim res , cmd ,sql,cnn,strcun
set cnn=createobject("adodb.connection")
Set res=createobject("adodb.recordset")
Set cmd=createobject("adodb.command")
strCnn = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=testlink;USER=root;Option=3"
cnn.open strcnn
set cmd.activeconnection=cnn
cmd.commandtype=1
sql="SELECT * FROM `users` WHERE login = 'xing'"
cmd.commandtext=sql
Set res=cmd.execute()
msgbox res("login")
Set res = nothing
Set cmd.ActiveConnection = nothing
Set Cmd= nothing
Browser("TestLink - Login").Page("TestLink 1.7.4").Frame("titlebar").Link("Logout").Click
查看(399)
评论(0)
收藏
分享
管理
-
2009-07-15 14:28:40
在测试的时候尽量要做到数据和测试用例的分离,我一般把数据放到Excel中,调用Excel的代码如下:
Datatable.ImportSheet"D:\QTP\test.xls","ceshi","Global"
Dim i, rowcount
rowcount=DataTable.GetRowCount
msgbox rowcount
For i=0 to rowcount-1
DataTable.SetCurrentRow(i+1)
msgbox DataTable.GetSheet("Global").GetParameter("name").Value
DataTable.SetNextRow
Next
查看(521)
评论(2)
收藏
分享
管理
-
2009-07-14 12:12:32
一个卸载QTP的小工具
查看(565)
评论(1)
收藏
分享
管理
-
2009-07-13 17:31:16
SystemUtil.Run "flight4a.exe","","D:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app","open"
查看(324)
评论(0)
收藏
分享
管理