1. 程式人生 > >iOS使用TestFlight進行內部和外部人員測試

iOS使用TestFlight進行內部和外部人員測試

轉載註明出處:https://www.jianshu.com/p/94eb388b5a36

前言

在iOS 8中,蘋果釋出了一個叫做TestFlight的新玩意,用於將Beta測試流水化。此前你可能聽說過這個東西,因為TestFlight作為一個獨立的測試平臺已經有些年頭了。不過在今年二月份的時候TestFlight的開發商Burstly被蘋果收購,於是在之後公開發行的Xcode 6和iOS 8上,你會發現TestFlight整合進了iTunes Connect,你可以通過電子郵件來邀請你的Beta測試成員。

coverImage.jpg

TestFlight提供的管理辦法是將測試者分為內部成員和外部成員。理論上說,這兩種測試者都可以在測試階段使用你的App,不過所謂的內部主要是指iTunes Connect上在你的開發團隊裡參與技術開發或者管理的成員。你最多可以邀請25個內部成員,而與之相對的外部成員,自然就是指那些不屬於你的團隊或者公司的測試者,外部測試人員的上限是2000人。這裡有一點需要注意的是,在你邀請外部成員參與測試之前,需要先通過蘋果的稽核。而這一限制在內部成員上就沒有,也就是說一旦你把你的App上傳到iTunes Connect上之後內部成員就可以開始進行測試了,無需稽核。

準備工作

  • 待測試的 ipa 包(用Application Loader上傳)或者是 xcarchive (用Xcode Upload to App Store)檔案(需要上傳到 iTunes Connect );
  • 到 App Store 下載安裝軟體 TestFlight;

步驟

  1. 將打包好的 ipa 或 xcarchive 檔案上傳到 iTunes Connect;
  2. 登入到 iTunes Connect 進入我的APP,選擇你的APP;
  3. 到 TestFlight 模組下,如果 App Store 有提交過的版本,內部測試員就可以了,我們只需要新增內部測試員使用者即可,如圖:

     

    TestFlight模組.jpeg

  4. 新增內部測試員(即新增iTunes Connect 使用者),如圖:

     

    新增內部測試員.jpeg

     

    新增成功.jpeg

  5. 接下來坐等收郵件,就是剛剛新增的那個使用者郵箱,會收到郵件,如圖:

     

    郵件.jpeg

  6. 點選 View in TestFlight 獲取邀請碼,如圖:

     

    邀請碼.jpeg

  7. 接下來開啟之前下載的 TestFlight 軟體,輸入邀請碼即可,接下來就可以安裝之前構建的版本和 App Store 的歷史版本。(每個版本都有90天的有效期,時間是從你的構建版本上傳到 iTunes Connect 算起)

注意:每一個邀請碼對應一個 Apple ID ,在 TestFlight 軟體中無需收輸入Apple ID(其實也沒法輸入),它會自動獲取當前裝置登入的 Apple ID ,如果此邀請碼已經被啟用(就是已繫結 Apple ID ),則無法在不同的 Apple ID 下使用了(如果多臺裝置都登入的是已繫結的 Apple ID 則不會出現此問題)。不過還有一種方法就是在不同的裝置登入邀請碼繫結的 Apple ID ,這樣直接開啟 TestFlight 都不需要輸入邀請碼即可下載安裝測試軟體。

溫馨提示
如果先添加了 iTunes Connect 使用者,則左側欄的新增外部測試員欄目消失了,同時出現了一個新群組欄,點選這個其實就可以新增外部測試員,只不過給外部測試員進行了分組,起了一個組名而已,本人當時找了半天沒找到,希望後面的同學注意下,免得在這裡浪費時間。

坑爹的新群組.jpeg

新增外部測試員基本差不多,接下來我直接上圖

新增外部測試員1.jpeg

新增外部測試員2.jpeg

新增外部測試員3.jpeg

填坑

在操作步驟3的時候可能會出現提示:“缺少出口合規證明”,如下圖所示:

缺少出口合規證明.jpeg

解決方法:去Info.plist檔案中新增 ITSAppUsesNonExemptEncryption 並設定為 NO ,修改 build 號,重新打包上傳。

新增key.jpeg

添加了此項,在iTunes Connect 上提交稽核的最後一步會有不同,少了一項:是否更改加密功能(這不會影響稽核的,放心的使用吧),如圖:

提交稽核.jpeg

小結

此方法的使用視具體情況而定,不見得就是最好的或是最壞的。今天正好有幾個特殊使用者需要用個特殊版本,所以採用了此方法。目前我們的測試包主要是通過指令碼自動編譯打包後上傳到雲伺服器,生成一個下載連結,測試的夥伴直接通過此連結下載安裝即可,(想學習自動化編譯打包的看這裡《iOS自動化編譯打包》)上圖更容易理解,請看圖:

自動化編譯的包列表.jpeg

對於以上我今天出現的情況,還有很多種方法可以為特殊使用者提供特殊版本的APP,比如:
1.用企業賬號,打一個特殊包,上傳到蒲公英供使用者下載使用(需要一個企業賬號)
2.獲取特殊使用者的裝置UDID,新增為測試裝置,重新用新的配置檔案編譯打包,把打好的包發給使用者安裝即可(需要使用者裝置UDID)
3.用今天所講的 TestFlight 即可,至於使用內部人員測試還是外部人員測試根據具體情況而定(需要使用者下載安裝 TestFlight 軟體)
以上幾種方法各有優點和缺點,自己對比,喜歡什麼就用什麼。__



作者:iTruda
連結:https://www.jianshu.com/p/94eb388b5a36
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。