当前位置: 首页 > news >正文

石家庄学做网站建设培训班加工厂怎么找订单

石家庄学做网站建设培训班,加工厂怎么找订单,flash 网站欣赏,做网站时需要注意什么问题我目前正在为LibFX添加一个新功能#xff0c;为此我创建了一些类似于Java Collections Framework的自定义集合。 我一直在寻找可以针对它们进行测试的测试#xff0c;并很高兴发现Google的Guava包含了我所需要的#xff1a;一个庞大的测试套件#xff0c;它针对JDK和Guava的… 我目前正在为LibFX添加一个新功能为此我创建了一些类似于Java Collections Framework的自定义集合。 我一直在寻找可以针对它们进行测试的测试并很高兴发现Google的Guava包含了我所需要的一个庞大的测试套件它针对JDK和Guava的所有集合接口验证了我实现的每个细节。 让我们快速浏览一下。 总览 这篇文章将首先展示如何设置项目然后再着手进行实际测试。 我没有创建专门的示例但是您可以看到我如何在LibFX中使用它 。 设定 为此我们需要JUnitGuava-Testlib和一些样板代码。 获取JUnit 如果您尚未在项目中使用JUnit请在此处获取。 如果您使用Maven或Gradle Maven的依赖项信息 dependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/versionscopetest/scope /dependency Gradle的依赖项信息 testCompile junit:junit:4.12获取番石榴 我们实际上需要的不是Guava本身而是Guava-Testlib 。 您可以从中央存储库下载它 该存储库还包含不同管理者的依赖项信息。 为了您的方便 Maven的依赖项信息 dependencygroupIdcom.google.guava/groupIdartifactIdguava-testlib/artifactIdversion18.0/versionscopetest/scope /dependency Gradle的依赖项信息 testCompile com.google.guava:guava-testlib:18.0写一些样板 假设您要编写一个MySet和相应的MySetTest 。 通过JUnit-3.8.x方式创建一个方法public static Test suite();. JUnit查找此方法并使用它来识别将为该类运行的所有测试。 在该方法内创建一个TestSuite并添加我们将要进一步编写的测试 MySetTest中的样板 public class MySetTest {public static Test suite() {return new MySetTest().allTests();}public Test allTests() {TestSuite suite new TestSuite(package.name.of.MySetTest);suite.addTest(testForOneToWayUseMySet());suite.addTest(testForAnotherWayToUseMySet());return suite;}} 我没有尝试使用JUnit 4的注释来执行此操作。如果您这样做了请ping通然后将其包含在此处。 放置好样板后您可以使用JUnit运行此类例如从IDE内部或CI服务器上运行。 测试您的实施 至此我们可以开始为实现实际创建测试了。 或者更准确地说告诉番石榴如何为我们做到这一点。 这是一个分为两部分的过程一个为集合中的元素和被测单元创建一个生成器另一个使用Guava的测试套件构建器之一来创建针对实现量身定制的全面测试集。 我们将继续测试Set的实现。 在下面我们将看到可用的其他接口测试套件。 元素生成器和被测单元 测试套件生成器要求您允许在集合中创建样本元素并实例化集合。 为此您必须实现TestSetGeneratorE 其中E是元素的类型。 这很简单 order(ListE)是可能需要考虑的唯一方法。 请注意与文档相反即使未报告CollectionFeature.KNOWN_ORDER testlib18.0的当前版本也确实调用了此方法有关功能的详细信息请参见下文。 就我而言 返回插入顺序就足够了。 测试套件生成器 现在这才是真正的魔术发生。 您从上方获取生成器将其传递给正确的测试套件生成器指定您的集合具有哪些功能它将创建定制的全面测试套件 使用“ SetTestSuiteBuilder”创建测试 public Test testForOneToWayUseMySet() {return SetTestSuiteBuilder.using(new MySetGenerator()).named(one way to use MySet).withFeatures(CollectionSize.ANY,CollectionFeature.ALLOWS_NULL_VALUES,CollectionFeature.FAILS_FAST_ON_CONCURRENT_MODIFICATION,CollectionFeature.SUPPORTS_ADD,CollectionFeature.SUPPORTS_ITERATOR_REMOVE,CollectionFeature.SUPPORTS_REMOVE,).createTestSuite(); } 特征 指定正确的功能很重要。 查看两个枚举CollectionSize和CollectionFeatures以查看存在哪些可能性来描述您的集合的行为。 请注意创建的测试会同时验证功能 例如如果ALLOWS_NULL_VALUES 构建器将生成测试以验证向集合添加null会抛出NullPointerException 。 抑制测试 通过在构建器上调用suppressing 可以指定将不会运行的测试方法。 当这些功能不足以精确指定行为时它似乎是最后的手段。 我没有使用它。 设置与拆卸 如果您必须在每次测试之前或之后运行代码则可以将其作为Runnable分别withTearDown给withSetUp或withTearDown 都可以在构建器上调用。 可用的测试套件 当然您也可以为其他接口生成测试套件。 乍一看就产生了以下可能性 Java的集合 采集 迭代器 清单 地图 导航地图 导航集 队列 组 SortedMap SortedSet 番石榴的收藏 双图 ListMultimap 多图 多集 SetMultimap SortedMultiset SortedSetMultimap 对* TestSuiteBuilder 注意通配符进行类型搜索会生成一些其他生成器。 我没有调查它们但是有可能将其用于其他情况下的测试。 为了使用它们只需实现相应的Test...Generator并将其交给相应的...TestSuiteBuilder 。 反射 我们已经看到了如何使用Guava的Testlib测试集合的实现如何将其和JUnit包含在我们的项目中运行它所需的样板以及对生成器和测试套件生成器的概述。 后者是发生所有魔术的地方它可以创建全面的测试以适合我们对实现及其功能的描述。 翻译自: https://www.javacodegeeks.com/2015/03/test-collection-implementations-with-guava.html
http://www.zqtcl.cn/news/48774/

相关文章:

  • 网站建设算软件还是硬件在线做简单的网站吗
  • 房地产怎么做网站推广企业解决方案案例分析
  • 怎么看网站开发的技术湖南网站推广营销设计
  • 网站版权模板青岛金融网站建设
  • 谷歌排名网站优化网站搭建赚钱吗
  • 做旅游的网站有哪些网络营销有哪些内容
  • 做二手房网站动漫制作教学
  • 潍坊做网站的网络公司简阳seo排名优化培训
  • 写作网站的文风1元云主机
  • 上海市城乡建设网站自己电脑做网站服务器系统
  • 网站建设数据库放哪网站技术实现方案
  • 网站制作报价多少国内新闻最新消息2021
  • 庆云网站建设注册电气工程师
  • 网站模板和定制怎么把网站黑了
  • 甘肃省建设厅官网站网站建设初级教程
  • 重庆住房和城乡建设厅网站品牌建设策略论文
  • 衣服图案设计网站响应式网站是
  • 创意网站模板下载新乡网页制作
  • 北京代建网站微信开发者平台api
  • 建筑公司查询网站ps切片以后 怎么做网站
  • 佛山营销型网站搭建如何自己开发一个软件
  • 腾讯学生服务器可以做网站吗奔驰高端品牌
  • 网站上的qq咨询怎么做网站充值怎么做分录
  • 龙岗附近做网站公司哪家好电脑技术学习网站
  • 青岛网站制作方法建设运营网站
  • 织梦文章类网站模板做视频网站要什么软件有哪些
  • 广东省建设工程安监局网站襄樊市网站建设公司
  • 门户网站建设工作方案电商网站入口
  • 手机网站大全下载苏州公司注册代理记账
  • 网站建设科技夜间正能量不良网站