我需要一次读取一个字符的文件,并使用BufferedReader的read()方法。 * 我发现read()比readLine()慢10倍左右。 这是预期的吗? 还是我做错了什么? 这是Java 7的基准testing。inputtesting文件有大约500万行和254万字符(〜242 MB)**: read()方法需要大约7000 ms来读取所有字符: @Test public void testRead() throws IOException, UnindexableFastaFileException{ BufferedReader fa= new BufferedReader(new FileReader(new File("chr1.fa"))); long t0= System.currentTimeMillis(); int c; while( (c = fa.read()) != -1 ){ // } long t1= System.currentTimeMillis(); System.err.println(t1-t0); // ~ 7000 ms } readLine()方法只需要readLine() ms: @Test public void testReadLine() throws IOException{ BufferedReader […]
SIKULI似乎有巨大的潜力。 有没有人试图使用这个作为testing工具? 或者它会更适合用户的自动操作?
TL; DR – 我正在寻找xUnit相当于MSTest的AssemblyInitialize (也就是我喜欢的ONEfunction)。 具体而言,我正在寻找它,因为我有一些selenium烟雾testing,我希望能够运行没有其他的依赖。 我有一个Fixture,将为我启动IisExpress并在处置时将其杀死。 但是在每次testing之前这样做会极大地增加运行时间。 我想在testing开始时触发一次该代码,并在最后处置它(closures进程)。 我怎么能这样做? 即使我可以通过编程访问诸如“目前正在运行多lesstesting”之类的东西,我也可以想出一些东西。
我试图build立多lessentity framework超过存储过程。 我希望说服我的老板让我们使用entity framework,以方便开发。 问题是我跑了一个性能testing,看起来EF比存储过程慢大约7倍。 我觉得这很难相信,我想知道如果我错过了什么。 这是一个确定的testing? 我能做些什么来提高EF Test的性能吗? var queries = 10000; // Stored Proc Test Stopwatch spStopwatch = new Stopwatch(); spStopwatch.Start(); for (int i = 0; i < queries; i++ ) { using (var sqlConn = new SlxDbConnection().Connection) { var cmd = new SqlCommand("uspSearchPerformanceTest", sqlConn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@searchText", "gstrader"); sqlConn.Open(); […]
我正在开发一个可以通过局域网访问互联网的embedded式设备。 我现在正处于testing阶段,我想testing设备在连接到互联网的时候是如何执行的。 目前,设备通过集线器连接到路由器,我使用该集线器通过Wireshark监视数据包。 什么是最好的方式来遏制设备的互联网速度,以模仿可能发生的情况? 我可以通过电脑吗? 我需要访问路由器吗? 如果是这样,是否有可能限制每个IP在路由器接口的速度? 实际上,有朋友build议我购买一个usb2lan以太网卡,并将PC lan连接到embedded式设备,然后使用软件QoS限制器。 你认为它会起作用吗?
从Android Studio 1.1rc开始,有unit testing支持 ,我想知道Android Instrumentationtesting和unit testing有什么区别。 据我所知: unit testing对于testing不会调用Android API的代码非常有用,而Androidtestingtesting则是用于testingAndroid API特定元素或GUI组件的集成testing。 但是,如果你在unit testing中使用Robolectric或Mockito这样的框架,如果我没有弄错,你可以testingAndroid代码(不需要设备)。 这是正确的,还是有更大的区别? 如果是这样,每个的用途是什么?
我一直在寻找Contains , Exists和List<T>可用的Any方法之间的性能基准。 我只是出于好奇才发现这一点,因为我一直对此感到困惑。 关于这些方法的许多问题描述了这些方法的定义,如: LINQ环:任何()与包含()巨大的集合 Linq。任何VS.Exists – 有什么区别? LINQ扩展方法 – Any()与Where()与Exists() 所以我决定自己做。 我将其添加为答案。 对结果有更多的了解是最受欢迎的。 我也做了这个基准arrays来看结果
我试图更好地理解testing框架,并一直在研究selenium。 我之前使用过HTMLUnit ,主要是当我需要从网站或类似的东西上刮掉一些信息的时候。 在编写testing自动化的时候,Selenium和HTMLUnit的优缺点是什么? 在我看来Selenium比HTMLUnit设置起来要复杂得多,虽然同时还有一个Selenium的HTMLUnitDriver,我认为它的行为与HTMLUnit本身的行为完全相同。 Selenium显然提供了更强大的框架,它具有用于Parareltesting的Selenium RC,它也有不同的浏览器驱动程序可以使用 – 尽pipe当您使用浏览器驱动程序时,testing实际上会打开/closures浏览器应用程序而不是无头的。 可能是我不正确的理解selenium。 一些方向和指针将是伟大的! 在另一个说明 – 一个单独的问题 – 我也在做移动浏览器的自动化testing,我看到Selenium有一个IPhoneDriver ,但这不是一个无头testing,因为它需要实际的iOS模拟器。 有没有办法在移动网站上进行无头testing? 更改用户代理是否足够? 我已经看到了一些关于改变用户代理的post,这些代码似乎有自己的挑战,例如。 在Selenium RC中设置用户代理 非常感谢!
许多人在编写unit testing时使用模拟对象。 什么是模拟对象 ? 为什么我会需要一个? 我需要一个模拟对象框架吗?
我需要testing一下我们的系统是否可以每秒执行N个请求。 从技术上讲,一个API需要2个请求,另外2个请求,第三个请求需要6个请求。 但重要的是他们应该同时发生 – 所以每秒10个请求。 所以,在JMeter中,我已经创build了三个线程组,第一个定义了线程数1,并且斜升时间为0.第二个线程组相同,第三个线程组定义了线程数6和斜升时间0。这并不能保证它每秒钟都会运行它如何模拟? 我怎么看到结果 – 如果能够执行或不是? 谢谢!