iOS 版 Access Checkout SDK
目录
项目结构
Access Checkout iOS 分为两个项目
- AccessCheckoutSDK,作为 Cocoapods pod 提供
- 示例应用,AccessCheckoutDemo,展示了如何将 SDK 中的不同功能集成到应用中
如何在 iOS 应用中集成 SDK
请参考 Worldpay 开发者文档了解如何将 SDK 集成到您的应用中 - https://developer.worldpay.com/docs/access-worldpay/checkout/ios
SDK开发入门
构建SDK项目
Note: <access-checkout-ios-root> refers to the folder that contains your copy of the access-checkout-ios repository
-
如果没有安装,请安装XCode
-
如果没有安装,请安装cocoapods(用于依赖管理)
sudo gem install cocoapods
-
安装SDK项目的依赖(例如,添加pods)
cd <access-checkout-ios-root>/AccessCheckoutSDK pod install pod update
-
在XCode中打开项目
- 点击“File > Open”
- 选择“/AccessCheckoutSDK/”目录并点击“Open”
-
构建项目
- 点击左上角的
Play
按钮来构建项目,构建应该成功。
- 点击左上角的
运行测试
-
安装
pact-ruby-standalone
- 从https://github.com/pact-foundation/pact-ruby-standalone下载副本
- 将文件解压到你选择的文件夹中(以下用
<pact-ruby-folder>
表示) - 运行位于
<pact-ruby-folder>
中的install.sh
脚本。这将在<pact-ruby-folder>/pact/bin/
中安装二进制文件
-
在AccessCheckoutSDK项目中创建指向pact-ruby-standalone二进制的符号链接
cd <access-checkout-ios-root>/AccessCheckoutSDK/ mkdir pact cd pact ln -s <pact-ruby-folder>/pact/bin .
此步骤是必需的,因为我们已配置了XCode中的Test预操作/后操作,在PACT测试前后启动/停止mock-service。如果您愿意,可以按照以下方式检查此配置
1. Click on the AccessCheckoutSDK scheme next to the Play/Stop icon at the top of XCode 2. Click `Edit Scheme` 3. Expand `Test` 4. Click on `Pre-actions` / `Post-actions` to see the commands that are run
-
在XCode中转到Test导航器。您可以
- 通过点击View > Navigators > Show Test Navigator菜单访问它
- 或者通过点击列表上方小菜单栏上的钻石图标
-
点击
AccessCheckoutSDKTests
旁边的Play
图标来运行单元测试 -
点击
AccessCheckoutSDKPactTest
旁边的Play
图标来运行PACT测试- 如果您遇到失败,请确保存在
<access-checkout-ios-root>/AccessCheckoutSDK/pact/bin
符号链接
- 如果您遇到失败,请确保存在
-
当运行PACT测试以生成和上传新版本时,请确保独立逐个运行每个PACT测试文件。PactConsumerSwift不支持多个提供者存在一个问题。
使用Cuckoo为现有的生产级代码类或协议生成模拟类
请参阅 AccessCheckoutSDK/scripts/mocks-build-phase.sh
脚本中的说明
运行演示应用
-
安装演示应用依赖项
cd <access-checkout-ios-root>/AccessCheckoutDemo pod install
-
在XCode中打开项目
- 点击“File > Open”
- 选择 '/AccessCheckoutSDKDemo/' 目录并点击 '打开'
-
运行演示应用
- 点击屏幕左上角的
播放
按钮使用您选择的模拟设备打开演示应用。
- 点击屏幕左上角的
安全性
通过GitHub中设置的webhook触发Checkmarx扫描,新发布版本必须将有效的Checkmarx报告附加到CR中
常见问题解答
提高SDK版本
运行以下命令以在代码中提高SDK版本。将包含所有相关更改的提交添加到当前签出的分支。
./scripts/bump_version.sh -v=[版本] -t=[票号]