7月 14

Solr初级教程

预览

本文档简要介绍如何运行solr,如何进行数据操作。

环境

本教程使用solr 4.9,需要。。。
1. Java 1.7或者更高。 2. 下载solr,地址

开始

解压solr压缩包,并且进入到“example”文件夹中。

Solr可以在很多Java容器中运行,本教程使用jetty。

运行example文件夹中的start.jarjava -jar start.jar,就可以使用jetty运行solr的war包,配置文件使用的是example中的configs。
上面的命令会启动jetty服务器,端口默认是8983,并且会将日志打印到控制台。
可以通过http://localhost:8983/solr/来打开solr的管理员页面 继续阅读

6月 12

Selenium WebDriver高级用法

掌握selenium初级用法后,来继续深入学习。

选择合适的WebDrvier

WebDriver是一个接口,它有几种实现,分别是HtmlUnitDrvierFirefoxDriverInternetExplorerDriverChromeDriverOperaDriver,除了 InternetExplorerDriver只能在Windows平台运行,其他WebDriver均能跨平台。

如果追求运行速度,HtmlUnitDriver是首选,但是它没有运行界面,不能实时看到运行效果。如果想看到运行效果,可以使用FirefoxDrvier,它会真正打开浏览器,在屏幕上运行,因此我们可以监测页面元素的位置、CSS的值等,但是代价就是速度慢。 继续阅读

6月 09

Jmeter-maven-plugin高级配置之分布式设置

通过<remoteConfig>标签来设置远程机器

使用jmeter Gui时可以很方便的配置远程节点,来分布式地压测,具体方法,不在描述。现在来说使用jmeter-maven-plugin这个插件如何配置分布式。

通过这个<startServersBeforeTests>标签,可以将–runremote命令发送到jmeter.properties中配置的节点机器上,来开启远程服务。

通过这个<stopServersAfterTests>标签,可以将–remoteexit命令发送到jmeter.properties中配置的节点机器上,来关闭远程服务。

<startServersBeforeTests> 和 <stopServersAfterTests>标签可以分开使用,因此我们可以通过其他进程来开启和关闭jmeter的远程服务。 继续阅读

6月 06

Jmeter-maven-plugin高级配置之压测结果文件格式

去掉结果中的时间戳

jmeter-maven-plugin插件默认在每个jtl结果文件的文件名中添加时间戳。如果你不想要这个时间戳,可以通过设置<testResultsTimestamp>标签来禁用。样例如下:

            <plugin>
                <groupId>com.lazerycode.jmeter</groupId>
                <artifactId>jmeter-maven-plugin</artifactId>
                <version>1.9.0</version>
                <executions>
                    <execution>
                        <id>jmeter-tests</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jmeter</goal>
                        </goals>
                        <configuration>
                            <testResultsTimestamp>false</testResultsTimestamp>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

继续阅读

6月 06

Jmeter-maven-plugin高级配置之选择测试脚本

在pom.xml文件中可以指定运行哪些jmx脚本。

运行所有的测试脚本

Jmeter默认运行${project.base.directory}/src/test/jmeter文件夹中的所有脚本,下面是示例。

    <project>
        [...]
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.lazerycode.jmeter</groupId>
                        <artifactId>jmeter-maven-plugin</artifactId>
                        <version>1.9.0</version>
                        <executions>
                            <execution>
                                <id>jmeter-tests</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>jmeter</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        [...]
    </project>

继续阅读

4月 30

Mongodb python驱动教程

安装

使用python驱动mongodb需要下载、安装PyMongo包

  • Windows用户,点击这里下载。
  • 使用pip安装在linux平台使用pip命令安装:

    pip install pymongo

    指定版本:

    pip install pymongo==2.6.3
    升级:

    `pip install –upgrade pymongo 继续阅读

4月 29

使用maven warpath插件合并多module的war包


现在java 项目一般使用maven、gradle等工具来管理jar包、打包、发布。如果一个项目有很多模块,那般是分成多个module,主目录有个parent,负责包含全部的module,然后目录中多个module文件夹,分别依赖parent或者其他module。最近有个项目,项目很久,代码全部放在一起,随着业务拓展变得与越来越庞大,于是其对进行module拆分。

问题

  1. 多个模块可能交叉依赖。
  2. 每个模块可能都会有前台页面的代码,jsp、js等。
  3. maven打包的时候能否war包、jar包一起打。 继续阅读
3月 03

Android兼容性测试工具Spoon

android分布式测试工具。

简介

android众多的版本和机型给android app测试工作带来不小的挑战。Spoon通过将case分布式地执行、将执行结果更友好地展示出来,从而简化android app的测试工作。

Spoon没有开发新的测试框架,而是让已经存在的测试框架更有效。现在的测试框架,一般都是通过测试apk来驱动被测apk,Spoon可以让这些case在多台设备上同时运行。一旦测试结束,Spoon就是生成一份html报表,来展示每台设备上的执行结果。

Spoon会检测到adb devices命令中显示的全部设备,并在这些设备上执行case。所以我们在使用spoon时,可以插入不同的手机、平板、或者不同配置的模拟器。 继续阅读

2月 26

Robolectric进行Android单元测试

测试驱动android开发

在安卓模拟器或者真机上跑测试用例速度很慢。构建、部署、启动app,通常需要花费一分钟或者更久。这不是TDD(测试驱动开发)模式.Robolectric提供一种更好的方式。

可能你一直尝试在java IDE中使用junit或者testng直接跑测试用例,但是一直报java.lang.RuntimeException: Stub!异常。

这个异常是因为在jdk中没有android运行环境。而现在Robolectric这款android单元测试工具,模拟了android sdk中的jar包,可以直接在jvm中运行测试用例,这样就大大节省了时间。一个Robolectric测试用例如下: 继续阅读