测试区块链应用程序可能很麻烦,主要是因为它们非常复杂的,需要资源要求高。在云上测试区块链应用程序可以提高测试过程的效率,以及实现更真实的测试环境。
本文提供了有关如何在谷歌云上使用Hyperledger Caliper(提交302665)的指南,介绍了测试Hyperledger Composer应用程序的场景,Hyperledger Composer应用程序是一个便于Hyperledger Fabric应用程序开发的区块链框架。尽管如此,此测试过程适用于Hyperledger Caliper支持的所有区块链(Hyperledger Burrow,Hyperledger Fabric,Hyperledger Iroha,Hyperledger Sawtooth等等)。
配置测试环境
1、创建一个私有存储库(例如,在Github上)。
2、将Hyperledger Caliper项目分叉到您的私人仓库:
git clone --bare https://github.com/hyperledger/caliper.git
cd caliper.git
git push --mirror https://github.com/USERNAME/CALIPER-PRIVATE-REPO.git
cd 。.
rm -rf caliper.git
3、复制你个人的repo
git clone https://github.com/USERNAME/CALIPER-PRIVATE-REPO.git
4、在CALIPER-PRIVATE-REPO / packages / caliper-samples / benchmark / composer上,创建一个包含应用程序名称的文件夹,例如:我的网络。
5、在my-network文件夹中,粘贴此存储库中的配置和测试文件的内容。在以后的文章中,我将解释如何编写测试(my-network.js)和基准测试配置(config.yaml)。
6、您应该使用Composer(BNA存档)建立一个开发的业务网络。如果您尚未开发业务网络,仍可以将Caliper配置为测试默认业务网络。
在CALIPER-PRIVATE-REPO-jusTIcechain / packages / caliper-samples / src / contract / composer上,创建一个名为my-network的文件夹。将您的业务网络存档文件(解压缩的BNA文件)粘贴到该文件夹中。
您应该有一个lib文件夹,一个models文件夹,以及文件package.json,permission.acl和可选的README.md文件。
请注意,在package.json上,网络的名称和版本必须与composer.json上的名称和版本一致。示例package.json:
{
“engines”:{
“composer”:“^0.20.0”
},
“name”:“my-network”,
“version”:“0.2.6-deploy.1”,
。.. ETC
7、您必要要有文件来测试您的应用程序。将它们推送到您的存储库:
git add *
git commit -m“add benchmark files”
git push origin master
谷歌云配置
1、在谷歌云上创建一个帐户。新帐户可以申请免费试用补助金。创建项目,然后激活Compute Instance API。
2、在Compute Engine - 》 VM Instances中,单击Create a new instance。
3、启动你的实例
4、单击Connect - SSH。
5、安装Hyperledger Caliper的先决条件(感谢Daz Wilkin):
docker-CE
sudo apt-get update
sudo apt-get install
linux-image-extra-$(uname -r)
linux-image-extra-virtual
sudo apt-get update
sudo apt-get install
apt-transport-https
ca-certificates
curl
software-properTIes-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository
“deb [arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs)
stable”
sudo apt-get update
sudo apt-get install docker-ce
sudo usermod -aG docker $USER
sudo systemctl enable docker
docker --version
docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1
/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Golang (opTIonal)
VERSION=1.9.1
OS=linux
ARCH=amd64
sudo curl
--locaTIon https://golang.org/dl/go$VERSION.$OS-$ARCH.tar.gz
--output go$VERSION.$OS-$ARCH.tar.gz
sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
export PATH=$PATH:/usr/local/go/bin
go version
6、使用Caliper和您的区块链应用程序将您的私人存储库克隆到您的Google Compute实例。
测试您的应用程序
要运行基准测试,请导航到caliper / packages / caliper-samples。
要使用CouchDB运行来测试您的应用程序:
caliper基准测试运行-w 。/ -c benchmark / composer / justice / config.yaml -n benchmark / composer / justice / composer.json
要使用LevelDB运行来测试您的应用程序:
测径器基准运行-w./-c benchmark/composer/justice/config.yaml-n benchmark/composer/justice/composer-level.json
基准测试的结果将在终端上报告。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)