Hadoop测试相关知识
-
【Python3】Python随机生成一位小数数据正文之前因为Hadoop测试需要很多的数据,所以我还是习惯性的用脚本语言来写数据集生成脚本,所以也就有了如下的内容了正文import randomfor i in range(200): #生成随机数,浮点类型 a = random.uniform(10, 30) #控制随机数的精度round(数值,精度) print(str(round(a,1)) + " cat" +str(i) )结果如下:23.4 cat021.8 cat111.0 cat222.3&n
-
Hadoop之MapReduce实战-单元测试篇原文地址:https://itweknow.cn/detail?id=62 ,欢迎大家访问。在上一篇文章《Hadoop之MapReduce实战》中,我们已经完成了一个很简单的MapReduce程序,并且成功的在Hadoop集群上执行。下面我们将来简要的介绍一下如何在我们本地调试和测试我们的MapReduce程序。MrUnitMRUnit是Cloudera公司专为Hadoop MapReduce写的单元测试框架,其API非常简洁实用。该框架对不同的测试对象使用不同的Driver,因此分为了:MapDriver、ReduceDriver和MapReduceDriver。项目依赖在前一篇文章的基础之上我们还需要添加如下依赖:<dependency> <groupId>org.apache.mrunit</groupId> <artifactId>mrunit</artifactId> <version>1.1.0<
-
基于docker的spark-hadoop分布式集群之二: 环境测试在上一节搭建的集群环境基础上,本节对各个模块做个测试Mysql 测试1、Mysql节点准备为方便测试,在mysql节点中,增加点数据进入主节点docker exec -it hadoop-maste /bin/bash进入数据库节点ssh hadoop-mysql创建数据库create database zeppelin_test;创建数据表create table user_info(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,name VARCHAR(16),age INT);增加几条数据,主键让其自增:insert into user_info(name,age) values("aaa",10);insert into u
-
Ubuntu安装hadoop并做单机测试1.配置jdk 见前文 2. 下载解压hadoop &#160;&#160;&#160;&#160;这里以2.7.7版本为例,将文件剪切到/usr/local里面并更改名字为hadoop方便后续配置 #解压 sudo tar -zxvf hadoop-2.7.7.tar.gz 更名 sudo mv hadoop-2.7.7.tar.gz hadoop ## 3. 为`hadoop`配置jdk版本呢 >&#160;&#160;&#160;&#160;设置`hadoop`目录下的`env`文件,`hadoop/etc/hadoop-env.sh `文件,注意这里的`etc`是在`hadoop`目录下的`etc`,大家注意命令执行的路径,在里面定义`jdk`目录,建议将`hadoop_hom
Hadoop测试相关课程
Hadoop测试相关教程
- 5. 测试 我们直接编写测试类,对数据访问接口进行测试。此处通过 @FixMethodOrder(MethodSorters.NAME_ASCENDING) 注解,使测试方法按名称顺序依次执行。这样就可以一次性测试 GoodsDao 中的所有方法了,具体测试代码如下:实例:/** * GoodsDao测试类 */@SpringBootTest@FixMethodOrder(MethodSorters.NAME_ASCENDING) // 按方法名称顺序测试class GoodsDaoTest { @Autowired private GoodsDao goodsDao; /** * 新增一个商品 */ @Test void test_01() { GoodsDo goods = new GoodsDo(); goods.setName("手机"); goods.setPic("phone.jpg"); goods.setPrice("2000"); int count = goodsDao.insert(goods); assertEquals(1, count);// count值为1则测试通过 } /** * 更新商品信息 */ @Test void test_02() { GoodsDo goods = new GoodsDo(); goods.setId(1L); goods.setName("手机"); goods.setPic("phone.jpg"); goods.setPrice("3000"); int count = goodsDao.update(goods); assertEquals(1, count);// count值为1则测试通过 } /** * 获取商品信息 */ @Test void test_03() { GoodsDo goods = goodsDao.selectOne(1L); assertNotNull(goods);// goods不为null则测试通过 } /** * 删除商品 */ @Test void test_04() { int count = goodsDao.deletex(1L);//此处应为delete(1L) assertEquals(1, count);// count值为1则测试通过 } /** * 获取商品信息列表 */ @Test void test_05() { List<GoodsDo> goodsList = goodsDao.selectAll(); assertEquals(0, goodsList.size());// goodsList.size()值为0则测试通过 }}测试结果如下,说明所有测试都通过了。JUnit 测试结果
- 4. 测试 我们主要是测试 JPA 模块正确可用,所以直接在测试类发起对 IGoodsDao 方法的测试即可。
- 2.6 测试 通过测试类发起测试,此处我们简单执行 1000 次插入,看看执行时间。需要注意的是,Spring Boot 进行测试时,需要添加注解 @SpringBootTest 。添加注解后该类可以直接通过 @Test 标注的方法发起单元测试,容器环境都已准备好,非常方便。实例:@SpringBootTest // 通过该注解,开启测试类功能,当测试方法启动时,启动了Spring容器class SpringBootHikariApplicationTests { @Autowired private DataSource dataSource;// 自动注入数据源 @Autowired private GoodsDao goodsDao; /** * 打印数据源信息 */ @Test // 测试方法 void printDataSource() { System.out.println(dataSource); } /** * 批量插入测试 */ @Test void insertBatch() { // 开始时间 long startTime = System.currentTimeMillis(); // 执行1000次插入 GoodsDo goods = new GoodsDo(); goods.setName("测试"); goods.setPic("测试图片"); goods.setPrice("1.0"); for (int i = 0; i < 1000; i++) { goodsDao.insert(goods); } // 输出操作时间 System.out.println("use time:" + (System.currentTimeMillis() - startTime)+"ms"); }}输出结果如下,可见默认数据源类型为 HikariDataSource ,插入 1000 条数据的时间大概为 1500ms (注意时间可能跟电脑性能等很多因素相关,此处只是进行简单的对比测试)。use time:1518mscom.zaxxer.hikari.HikariDataSource
- 2.3 测试 我们在项目中与 main 目录同级的 test 目录中找到测试类 ZkClientDemoApplicationTests ,在其中添加测试方法。2.3.1 查询测试package cn.cdd.zkclientdemo;import cn.cdd.zkclientdemo.service.ZkClientServer;import org.I0Itec.zkclient.ZkClient;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import java.util.List;@SpringBootTestclass ZkClientDemoApplicationTests { // 依赖注入 @Autowired private ZkClientServer zkClientServer; @Test void contextLoads() { // 获取 ZkClient 对象 ZkClient zkClient = zkClientServer.getZkClient(); // 获取子节点集合 List<String> children = zkClient.getChildren("/"); System.out.println(children); // 释放资源 zkClient.close(); }}执行测试方法,控制台输出:[zookeeper, imooc]我们可以看到控制台输出了在上一节中我们增加的节点 imooc,说明我们的查询成功执行了。接下来我们测试其它的 API。2.3.2 创建持久节点创建持久节点测试:@Testvoid contextLoads() { ZkClient zkClient = zkClientServer.getZkClient(); // 在 imooc 节点下创建持久节点 wiki zkClient.createPersistent("/imooc/wiki"); // 获取 imooc 节点的子节点集合 List<String> children = zkClient.getChildren("/imooc"); System.out.println(children); // 释放资源 zkClient.close();}执行测试方法,控制台输出:[wiki]2.3.3 删除节点删除节点测试:@Testvoid contextLoads() { ZkClient zkClient = zkClientServer.getZkClient(); // 删除 imooc 的 子节点 wiki boolean delete = zkClient.delete("/imooc/wiki"); System.out.println(delete); // 释放资源 zkClient.close();}执行测试方法,控制台输出:truetrue 表示删除 wiki 节点成功。2.3.4 读写数据节点数据读写测试:@Testvoid contextLoads() { ZkClient zkClient = zkClientServer.getZkClient(); // 给 imooc 节点写入数据 wiki zkClient.writeData("/imooc","wiki"); // 读取 imooc 节点的数据 Object data = zkClient.readData("/imooc"); System.out.println(data); // 释放资源 zkClient.close();}执行测试方法,控制台输出:wikiTips: 当我们使用 API 操作节点时,节点参数必须是全路径。测试完成后,我们来对 ZkClient 常用的 API 做一下介绍。
- 3.6 测试 测试类代码同 spring-boot-hikari 一致,运行测试类后,结果如下:use time:1428mscom.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceWrapper
- 2.1 指定测试用例进行测试 其实每一项新的操作一般都会伴随一些问题产生。例如,我们在实际的开发过程中,有些时候只是改动了一处代码,但是如果直接执行 mvn test 命令的话,会将整个项目的测试用例全部都执行一遍,这对于我们来说,是有些得不偿失的,没必要因为一处改动,而去测试其他几十个或者几百个测试用例。那我们应该怎么办呢? 这里我们为了演示,写了两个测试类,OrderServiceTest 和OrderService2Test,其中第一个类中,有两个测试用例,第二个类中,只有一个测试用例。这时候,我们修改了第二个类中测试用例对应的方法,需要重新进行单元测试。我们可以直接执行命令:mvn test -Dtest=OrderService2Test:[INFO] Scanning for projects...[INFO][INFO] ----------------------< com.mic.tech:mall-order >-----------------------[INFO] Building mall-order 1.0.0-SNAPSHOT[INFO] --------------------------------[ jar ]---------------------------------[INFO] ...[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ mall-order ---[INFO] Surefire report directory: D:\code\mall-aggregate\mall-order\target\surefire-reports------------------------------------------------------- T E S T S-------------------------------------------------------Running com.mic.tech.OrderService2Test...Results :Tests run: 1, Failures: 0, Errors: 0, Skipped: 0[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 4.261 s[INFO] Finished at: 2020-05-21T22:17:47+08:00[INFO] ------------------------------------------------------------------------从结构来看,我们这里只执行了第二个测试类中的测试用例。
Hadoop测试相关搜索
-
h1
h6
hack
hadoop
halt
hana
handler
hanging
hash
hashtable
haskell
hatch
hbase
hbuilder
hdfs
head
header
header php
headers
headerstyle