PippinTesting 2.1.0

PippinTesting 2.1.0

Andrew McKnight 维护。



  • 作者
  • Andrew McKnight

Pippin

Swift 5.1 platforms License

Pippin 是一组用于构建 iOS 应用基础设施并协助开发任务(如编写代码、测试和调试)的工具。

在默认设置下开始使用只需声明 Podfile 依赖项

pod 'Pippin'

在您的应用启动序列的某个时间点

import Pippin
import PippinAdapters

let environment = Environment.default(
    bugReportRecipients: ["[email protected]"],
    touchVizRootVC: UIViewController(nibName: nil, bundle: nil) // optional
)

// Crashlytics is a special situation
environment.crashReporter = CrashlyticsAdapter(debug: true)

// other optional peripherals
environment.locator = CoreLocationAdapter(locatorDelegate: self)

environment.connectEnvironment()

您将获得以下内容,只需少量模板代码

  • 日志记录
  • 崩溃报告
  • 错误报告
  • 进度指示器
  • 警告对话框
  • 字体
  • 应用程序和启动信息
  • 数据模型
  • 触摸可视化
  • 启动参数和环境变量
  • 授权的 CLLocationManager(通过类似方式可获取授权的 AVCaptureDevice

Podspec

这里有五个 podspec 来提供这些工具,有关更多信息请参阅各自的 README。

注意:这些是通过单独的 podspec 而不是包含多个 podspec 的单个 podspec 提供的,有两个 spec 级别并不完全等效于所有功能。

旧的 Pippin.podspec 现在是一个展开的框架,拉入了 PippinCorePippinAdaptersPippinLibraryPippinTesting 以方便使用。

示例项目

这些用于测试,可以使用pod try进行评估。

贡献

欢迎提出问题和拉取请求!

测试

rake test

运行一系列Rake任务,这些任务本身也可以独立运行。

  • example_smoke_tests
  • unit_tests
  • test_smoke_test
  • subspec_smoke_test

example_smoke_tests

Examples/目录中的每个项目中尝试运行pod install和构建。

unit_tests

运行针对任何Pippin podspec中的任何test_specs创建的单元测试套件。

test_smoke_test

运行pod install并尝试构建Example/Pippin.xcodeproject的单元和UI测试目标,这两个目标都声明了对PippinLibraryPippinTesting的依赖。

subspec_smoke_test

一个集成烟测试,为每个Pippin podspec的每个子规格生成一个Xcode项目,每个项目包含Swift和Objective-C两个语言的版本,以尝试在 pod install 应用的子规范之后构建。每个项目都存放在 PippinTests/SmokeTests 下。

PippinTests/ 目录还包含在 ObjcApp/SwiftApp/ 下的模板项目源代码以及模板Podfile。

Podspec test_specs

Pippin podspec目前包含位于 Tests/ 的单元测试。

  • PippinLibrary
  • PippinTesting

感谢!

如果这个项目对您有帮助,请考虑 留下小费🤗