jenkins构建微信小程序并展示二维码

测试小程序的过程中,很多都是在回头和前端开发说一句,兄弟帮我打一个测试版本的测试码,开发有时间的情况下还好,就直接协助了,但是很多时候他们只修复了其中几个bug,其他需要修复的bug代码正在编写,这就遇到了问题,耽误了测试时间,基于此给大家分享一下利用Jenkins去构建微信小程序二维码,并在jenkins上展示最新的二维码图片方便扫描测试。

操作步骤简介

安装 Jenkins 插件,例如 Jenkins Plugin for WeChat Mini Program Builder(微信小程序构建器插件)。

创建新的 Jenkins Pipeline,或者在现有的 Jenkins Pipeline 中启用 WeChat Mini Program Builder 插件。

配置 Jenkins 构建步骤,添加微信小程序构建相关任务。

测试您的微信小程序。

以下是详细的步骤说明:

1、安装 Jenkins 插件

登录 Jenkins 控制台。

单击 Manage Jenkins -> Manage Plugins -> Available.

搜索 WeChat Mini Program Builder 插件并安装。

2、创建新的 Jenkins Pipeline

单击 New Item,选择 Pipeline。

输入 Pipeline 名称和其他相关信息。

选中 Enable Pipeline 功能框,勾选 Enable Scm Polling 并输入 Git URL。

单击 OK 按钮完成Pipeline 设置。

启用 WeChat Mini Program Builder 插件

单击 Configure System -> Global Tools Configuration.

添加微信小程序构建器插件,输入必要的信息(如 App ID, Secret Key)并保存。

3、添加微信小程序构建器插件到 Jenkins Pipeline 中。

配置 Jenkins 构建步骤

单击 New Item -> Build with Parameters.

添加微信小程序相关的步骤到 Jenkins Pipeline 中,例如微信小程序构建任务、打包任务等。

单击 Save.

4、测试您的微信小程序

在 Jenkins 控制台上单击 Build Now 开始构建。

查看 Console Output ,确认没有错误消息。

在移动设备或微信开发者工具中测试您的小程序。

5、请注意,由于微信小程序有一些限制,请务必遵守相关要求,例如大小、格式等。在微信小程序官方文档中有更多详细信息。

示例

以下是一个 Jenkins Pipeline 的示例,用于构建微信小程序:

  1. pipeline {

  2. agent any

  3. parameters {

  4. string(name: 'APP_ID', defaultValue: '', description: 'Your Wechat Mini Program APP ID')

  5. string(name: 'SECRET_KEY', defaultValue: '', description: 'Your Wechat Mini Program Secret Key')

  6. }

  7. stages {

  8. stage('Checkout') {

  9. steps {

  10. checkout scm

  11. }

  12. }

  13. stage('Build') {

  14. steps {

  15. echo 'Building your WeChat Mini Program...'

  16. script {

  17. node {

  18. sh """

  19. npm install

  20. npm run build

  21. """

  22. }

  23. }

  24. }

  25. }

  26. stage('Deploy') {

  27. steps {

  28. script {

  29. node {

  30. def buildDir = '/var/tmp/build'

  31. dir(buildDir) {

  32. // 将构建目录移动到临时位置

  33. sh 'mv dist/* .'

  34. // 安装 WeChat Mini Program Builder 插件

  35. wechatmp init ${params.APP_ID} ${params.SECRET_KEY}

  36. // 构建微信小程序

  37. wechatmp build

  38. }

  39. }

  40. }

  41. }

  42. }

  43. }

  44. }

在上述 Pipeline 中,首先从 SCM 检出代码,然后构建小程序,并最终构建微信小程序。

注意:您需要设置一些 Jenkins 参数,例如 APP_ID 和 SECRET_KEY。这些参数可以在微信开放平台找到。

此外,在构建时,必须正确安装 WeChat Mini Program Builder 插件,并将其添加到 Jenkins 中。

在构建过程中,可以添加额外的步骤,例如测试、发布等。

展示微信小程序二维码

要在 Jenkins 上展示微信小程序的二维码,请按照以下步骤操作:

使用 Jenkins 插件生成 QR Code,并将其作为 JUnit XML 结果的一部分发送到微信小程序中。

使用 Jenkins 插件解析 JUnit XML 文件,并在微信小程序中显示 QR Code。

以下是详细的步骤说明:

生成 QR Code

安装 QR Code Generator 插件,参见官方文档。

使用该插件生成 QR Code,并将其添加到 JUnit XML 文件中。

解析 JUnit XML 文件

安装 Jenkins 的微信小程序插件,如 Jenkins Xcode Integration。

添加一个 Jenkins 步骤,在构建完成后发送 JUnit XML 文件给微信小程序。

在您的 Jenkins 实例中打开一个二维码,指向 JUnit XML 文件。

在微信小程序中打开此二维码,使其解析 JUnit XML 文件。

请注意,在显示 QR Code 之前,您需要先获取微信小程序的凭证。

Java 代码示例,演示如何在 Jenkins 中生成 QR Code:

  1. import com.google.zxing.BarcodeFormat;

  2. import com.google.zxing.EncodeHintType;

  3. import com.google.zxing.WriterException;

  4. import com.google.zxing.client.j2se.MatrixToImageWriter;

  5. import com.google.zxing.common.BitMatrix;

  6. import com.google.zxing.qrcode.QRCodeWriter;

  7. import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;

  8. import javax.imageio.ImageIO;

  9. import java.awt.image.BufferedImage;

  10. import java.io.File;

  11. import java.io.IOException;

  12. import java.nio.file.Files;

  13. import java.nio.file.Path;

  14. import java.nio.file.Paths;

  15. import java.util.HashMap;

  16. import java.util.Map;

  17. public class QrCodeGenerator {

  18. public static void main(String[] args) throws WriterException, IOException {

  19. String content = "Hello, World!";

  20. int width = 300; // 二维码宽度

  21. int height = 300; // 二维码高度

  22. QRCodeWriter qrCodeWriter = new QRCodeWriter();

  23. Map hints = new HashMap<>();

  24. hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);

  25. BitMatrix bitMatrix = qrCodeWriter.encode(content, BarcodeFormat.QR_CODE, width, height, hints);

  26. Path file = Paths.get("/tmp/test.png");

  27. MatrixToImageWriter.writeToFile(bitMatrix, "PNG", file.toFile());

  28. System.out.println(file.toString());

  29. }

  30. }

在上述代码中,我们将字符串转换为 QR Code,并将结果保存为 PNG 图片。

在 Jenkins Pipeline 中,您可以使用 Jenkins Pipeline 变量来保存生成的 QR Code 文件路径,并将其作为构建结果的一部分发送给微信小程序。

您可以参考 Jenkins 的微信小程序插件文档以了解更多详细信息。

升级版-Python 

  1. from PIL import Image

  2. from pyqrcode import create as qrcode

  3. def generate_qrcode(image_path):

  4. qr_code_data = 'Hello, World!'

  5. qr_code_image = qrcode.create(qr_code_data)

  6. qr_code_image.save(image_path)

  7. def build_wechat_app():

  8. # 获取参数

  9. APP_ID = input("Enter your APP_ID:")

  10. SECRET_KEY = input("Enter your SECRET_KEY:")

  11. # 清理目录

  12. subprocess.call(['rm', '-rf', 'dist'])

  13. # 构建小程序

  14. subprocess.call(['npm', 'run', 'build'])

  15. # 移动构建目录

  16. subprocess.call(['mv', 'dist', '/var/tmp/build'])

  17. # 初始化微信小程序

  18. subprocess.call(['wechatmp', 'init', APP_ID, SECRET_KEY])

  19. # 生成二维码

  20. generate_qrcode('/tmp/qrcode.png')

  21. if __name__ == '__main__':

  22. build_wechat_app()

在上面的示例中,我们调用 generate_qrcode() 函数,用于生成 QR Code。该函数接受一个图像路径作为参数,并将其保存为 PNG 格式。

注意:为了更好地兼容不同的微信小程序插件,请参阅官方文档以了解如何正确处理图像尺寸和格式。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

  • 27
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值