เดเดจเตเดฑเต เดชเตเดฐเต เดฆเดฟเดฎเดฟเดคเตเดฐเดฟ, เดเดพเตป เดเดฎเตเดชเดจเดฟเดฏเดฟเตฝ เดเดฐเต เดเตเดธเตเดฑเตเดฑเดฑเดพเดฏเดฟ เดเตเดฒเดฟ เดเตเดฏเตเดฏเตเดจเตเดจเต
เดเดคเดฟเดจเตเดฎเตเดฎเตเดชเต, เดเดพเตป เดเดคเดฟเดจเดเด เดคเดจเตเดจเต เดเตปเดกเตเดฐเตเดฏเดฟเดกเดฟเดจเตเดณเตเดณ เดซเดฏเตผเดฌเตเดธเต เดเตเดธเตเดฑเตเดฑเต เดฒเดพเดฌเต เดชเดฐเตเดเตเดทเดฟเดเตเดเต, เดเดฒเตเดฒเดพเด เดถเดฐเดฟเดเตเดเตเด เดเดทเตเดเดชเตเดชเตเดเตเดเต, เด เดคเดฟเดจเดพเตฝ เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเดจเตเดฑเต iOS เดเตเดธเตเดฑเตเดฑเต เดเตปเดซเตเดฐเดพเดธเตเดเตเดฐเดเตเดเตผ เด เดคเต เดเดเตเดเดคเตเดคเดฟเตฝ เดธเตเดฅเดพเดชเดฟเดเตเดเดพเตป เดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต. เดเดจเดฟเดเตเดเต เดเดฐเตเดชเดพเดเต เดเตเดเดฟเตพ เดเตเดฏเตเดฏเตเดฃเตเดเดฟเดตเดจเตเดจเต, เดเดฒเตเดฒเดพเด เดเดฆเตเดฏเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ, เด เดคเดฟเดจเดพเตฝ เดเดชเตเดชเตเดดเตเด เดฌเตเดฆเตเดงเดฟเดฎเตเดเตเดเตเดจเตเดจเดตเตผเดเตเดเดพเดฏเดฟ เดเดฐเต เดเตเดฏเตเดเตเดเตเดฑเดฟเดฏเตฝ เดฒเตเดเดจเด เดเดดเตเดคเดพเตป เดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต.
เด
เดคเดฟเดจเดพเตฝ, เดจเดฟเดเตเดเตพเดเตเดเต เดเดฐเต iOS เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเตฝ UI เดเตเดธเตเดฑเตเดฑเตเดเตพ เดเดฃเตเดเตเดเตเดเดฟเตฝ, เดจเดฒเตเดฒ เดเตเตผเดชเตเดชเดฑเตเดทเตป เดจเตฝเดเตเดจเตเดจ เดฏเดฅเดพเตผเดคเตเดฅ เดเดชเดเดฐเดฃเดเตเดเดณเดฟเตฝ เดจเดฟเดเตเดเตพเดเตเดเต เด
เดต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเดพเดตเตเดจเตเดจเดคเดพเดฃเต. เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดณเตเดณเดตเตผเดเตเดเต เดชเตเดเตเดเดฏเดฟเดฒเตเดเตเดเต เดธเตเดตเดพเดเดคเด.
เดธเตเดฑเตเดฑเตเดฑเดฟเดฏเดฟเตฝ, เดเดฟเดฒ เดชเตเดฐเดพเดฐเดเดญ เดกเดพเดฑเตเดฑเดฏเดฟเตฝ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเดพเตป เดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต - GitHub-เดฒเต เดเดฐเต เดธเตเดตเดเดพเดฐเตเดฏ เดถเตเดเดฐเดฃเดตเตเด CircleCI เดฌเดฟเตฝเดกเต เดธเดฟเดธเตเดฑเตเดฑเดตเตเด. เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดฑเต เดชเตเดฐเต AmazingApp เดเดฃเต, bundleID เดเดจเตเดจเดคเต com.company.amazingapp เดเดฃเต. เดคเตเดเตผเดจเตเดจเตเดณเตเดณ เดเดถเดฏเดเตเดเตเดดเดชเตเดชเด เดเตเดฑเดฏเตเดเตเดเดพเตป เดเดพเตป เด เดกเดพเดฑเตเดฑ เดเดเดจเดเดฟ เด
เดตเดคเดฐเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต.
เดจเดฟเดเตเดเดณเตเดเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเตฝ เดเดฟเดฒ เดชเดฐเดฟเดนเดพเดฐเดเตเดเตพ เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏเดฟ เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เด เดญเดฟเดชเตเดฐเดพเดฏเดเตเดเดณเดฟเตฝ เดจเดฟเดเตเดเดณเตเดเต เด เดจเตเดญเดตเด เดชเดเตเดเดฟเดเตเด.
1. เดเตเดธเตเดฑเตเดฑเตเดเตพ เดคเดจเตเดจเต
UI เดเตเดธเตเดฑเตเดฑเตเดเตพเดเตเดเดพเดฏเดฟ เดเดฐเต เดชเตเดคเดฟเดฏ เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดฌเตเดฐเดพเดเตเดเต เดธเตเดทเตเดเดฟเดเตเดเตเด:
$ git checkout develop
$ git pull
$ git checkout -b โfeature/add-ui-testsโ
XCode-เตฝ เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดคเตเดฑเดจเตเดจเต UI เดเตเดธเตเดฑเตเดฑเตเดเตพ [XCode -> File -> New -> Target -> iOS Testing Bundle] เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฐเต เดชเตเดคเดฟเดฏ เดเดพเตผเดเตเดฑเตเดฑเต เดธเตเดทเตโเดเดฟเดเตเดเดพเด, เด เดคเดฟเดจเต AmazingAppUITests เดเดจเตเดจ เดธเตเดตเดฏเด เดตเดฟเดถเดฆเตเดเดฐเดฃ เดจเดพเดฎเด เดจเตฝเดเดพเด.
เดธเตเดทเตโเดเดฟเดเตเด เดเดพเตผเดเตเดฑเตเดฑเดฟเดจเตเดฑเต เดฌเดฟเตฝเดกเต เดซเตเดธเดธเต เดตเดฟเดญเดพเดเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดฏเดฟ เดเดพเตผเดเตเดฑเตเดฑเต เดกเดฟเดชเตปเดกเตปเดธเดฟเดเดณเตเดเต เดธเดพเดจเตเดจเดฟเดงเตเดฏเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเด - AmazingApp, เดเดเดชเตเตฝ เดเดฑเดตเดฟเดเดเตเดเดณเดฟเตฝ - AmazingAppUITests.swift.
เดตเตเดฏเดคเตเดฏเดธเตโเดค เดฌเดฟเตฝเดกเต เดเดชเตโเดทเดจเตเดเตพ เดชเตเดฐเดคเตเดฏเตเด เดธเตโเดเตเดฎเตเดเดณเดพเดฏเดฟ เดตเตเตผเดคเดฟเดฐเดฟเดเตเดเตเด เดเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒ เดฐเตเดคเดฟ. เดเดเตเดเดณเตเดเต UI เดเตเดธเตเดฑเตเดฑเตเดเตพเดเตเดเดพเดฏเดฟ เดเดเตเดเตพ เดเดฐเต เดธเตเดเตเด เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต [XCode -> เดเตฝเดชเตเดชเดจเตเดจเด -> เดธเตเดเตเด -> เดชเตเดคเดฟเดฏ เดธเตเดเตเด] เด เดคเดฟเดจเต เด เดคเต เดชเตเดฐเต เดจเตฝเดเตเดจเตเดจเต: AmazingAppUITests.
เดธเตเดทเตโเดเดฟเดเตเด เดธเตเดเตเดฎเดฟเดจเตเดฑเต เดฌเดฟเตฝเดกเดฟเตฝ เดชเตเดฐเดงเดพเดจ เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดฑเต เดฒเดเตเดทเตเดฏเด เดเตพเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเดเตเดเดฃเด - AmazingApp, Target UI เดเตเดธเตเดฑเตเดฑเตเดเตพ - AmazingAppUITests - เดธเตเดเตเดฐเตเตปเดทเตเดเตเดเต เดเดพเดฃเตเด
เด
เดเตเดคเตเดคเดคเดพเดฏเดฟ, UI เดเตเดธเตเดฑเตเดฑเตเดเตพเดเตเดเดพเดฏเดฟ เดเดเตเดเตพ เดเดฐเต เดชเตเดคเดฟเดฏ เดฌเดฟเตฝเดกเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต. XCode-เตฝ, เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดซเดฏเดฒเดฟเตฝ เดเตเดฒเดฟเดเตเดเต เดเตเดฏเตเดคเต เดตเดฟเดตเดฐ เดตเดฟเดญเดพเดเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. "+" เดเตเดฒเดฟเดเตเดเต เดเตเดฏเตเดคเต เดเดฐเต เดชเตเดคเดฟเดฏ เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดธเตเดทเตเดเดฟเดเตเดเตเด, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต XCtest. เดเตเดกเต เดเดชเตเดชเดฟเดเตเดฎเตเดชเตเตพ เดเดพเดเดฌเตเดฑเดฟเดจเตเดเตเดชเตเดชเด เดจเตเดคเตเดคเด เดเตเดฏเตเดฏเตเดจเตเดจเดคเต เดเดดเดฟเดตเดพเดเตเดเดพเตป เดญเดพเดตเดฟเดฏเดฟเตฝ เดเดเตเดเตพเดเตเดเต เดเดคเต เดเดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดฐเตเด.
เดจเดฟเดเตเดเดณเตเดเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเตฝ เดเตเดฑเดเตเดเดคเต เดฎเตเดจเตเดจเต เดเดพเตผเดเตเดฑเตเดฑเตเดเดณเตเดเตเดเดฟเดฒเตเด เดเดฃเตเดเต: เดชเตเดฐเดงเดพเดจ เดเดชเตเดฒเดฟเดเตเดเตเดทเตป, เดฏเตเดฃเดฟเดฑเตเดฑเต เดเตเดธเตเดฑเตเดฑเตเดเตพ (เดเดฒเตเดฒเดพเดคเตเดคเดฟเดจเตเดฎเตเดชเดฐเดฟ, เด
เดต เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดเต, เด
เดฒเตเดฒเต?) เดเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเด เดเดพเตผเดเตเดฑเตเดฑเต เดฏเตเด เดเตเดธเตเดฑเตเดฑเตเดเตพ.
เดเดพเตผเดเตเดฑเตเดฑเต เด เดฎเตเดธเดฟเดเดเต เดเดชเตเดชเต, เดฌเดฟเตฝเดกเต เดธเตเดฑเตเดฑเดฟเดเดเตเดธเต เดเดพเดฌเต, เดเตเดกเต เดธเตเดจเดฟเดเดเต เดเดกเดจเตเดฑเดฟเดฑเตเดฑเดฟ เดตเดฟเดญเดพเดเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. XCtest เดเตเตบเดซเดฟเดเดฑเตเดทเดจเดพเดฏเดฟ, iOS เดกเตเดตเดฒเดชเตเดชเตผ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด. เดเตเดกเต เดธเตเดจเดฟเดเดเต เดธเตเดฑเตเดฑเตเตฝ เดตเดฟเดญเดพเดเดคเตเดคเดฟเตฝ, เดฎเดพเดจเตเดตเตฝ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด. เดเดเตเดเตพ เดเดคเตเดตเดฐเต เดเดฐเต เดชเตเดฐเตเดตเดฟเดทเดจเดฟเดเดเต เดชเตเดฐเตเดซเตเตฝ เดธเตเดทเตเดเดฟเดเตเดเดฟเดเตเดเดฟเดฒเตเดฒ, เดเดจเตเดจเดพเตฝ เดเตเดฑเดเตเดเต เดเดดเดฟเดเตเดเต เดเดเตเดเตพ เดคเตเตผเดเตเดเดฏเดพเดฏเตเด เด เดคเดฟเดฒเตเดเตเดเต เดฎเดเดเตเดเตเด.
Target AmazingAppUITests-เดจเดพเดฏเดฟ เดเดเตเดเตพ เด เดคเต เดคเดจเตเดจเต เดเตเดฏเตเดฏเตเดจเตเดจเต, เดเดจเตเดจเดพเตฝ เดเตฝเดชเตเดชเดจเตเดจ เดฌเดฃเตเดเดฟเตฝ เดเดกเดจเตเดฑเดฟเดซเดฏเตผ เดเตเดณเดคเตเดคเดฟเตฝ เดเดเตเดเตพ com.company.amazingappuitess เดเดจเตเดจเต เดจเตฝเดเตเดจเตเดจเต.
2. เดเดชเตเดชเดฟเตพ เดกเตเดตเดฒเดชเตเดชเตผ เดชเตเดฐเตเดเตเดฐเดพเดฎเดฟเตฝ เดเดฐเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
Apple เดกเตเดตเดฒเดชเตเดชเตผ เดชเตเดฐเตเดเตเดฐเดพเด เดชเตเดเดฟเดฒเตเดเตเดเต เดชเตเดเตเด, เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเตพ, เดเดกเดจเตเดฑเดฟเดซเดฏเดฑเตเดเตพ & เดชเตเดฐเตเดซเตเดฒเตเดเตพ เดตเดฟเดญเดพเดเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด, เดคเตเดเตผเดจเตเดจเต เดเดกเดจเตเดฑเดฟเดซเดฏเดฑเตเดเตพ เดเดจเดคเตเดคเดฟเดจเตเดฑเต เดเดชเตเดชเต เดเดกเดฟ เดเตเดณเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. AmazingAppUITests, bundleID com.company.amazingappuitests เดเดจเตเดจ เดชเตเดฐเดฟเตฝ เดเดฐเต เดชเตเดคเดฟเดฏ เดเดชเตเดชเต เดเดกเดฟ เดธเตเดทเตโเดเดฟเดเตเดเตเด.
เดเดชเตเดชเตเตพ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเต เดเดชเดฏเตเดเดฟเดเตเดเต เดเดเตเดเดณเตเดเต เดเตเดธเตเดฑเตเดฑเตเดเดณเดฟเตฝ เดเดชเตเดชเดฟเดเดพเตป เดเดเตเดเตพเดเตเดเต เด
เดตเดธเดฐเดฎเตเดฃเตเดเต, เดชเดเตเดทเต... เดเตเดธเตเดฑเตเดฑเดฟเดเดเดฟเดจเดพเดฏเดฟ เดเดฐเต เดฌเดฟเตฝเดกเต เดเตเดเตเดเดฟเดเตเดเตเตผเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดเดชเดเดฟเดเตเดฐเดฎเด เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดคเดจเตเดจเต เด
เดธเดเดฌเดฟเตพ เดเตเดฏเตเดฏเตเดเดฏเตเด เดเตเดธเตเดฑเตเดฑเต เดฑเดฃเตเดฃเดฑเต เดเตเดเตเดเดฟเดเตเดเตเตผเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เด
เดคเดจเตเดธเดฐเดฟเดเตเดเต, เดเดฐเต เดชเตเดฐเตเดตเดฟเดทเดจเดฟเดเดเต เดชเตเดฐเตเดซเตเตฝ เดเดชเดฏเตเดเดฟเดเตเดเต เดฐเดฃเตเดเต เดฌเดฃเตเดเดฟเตฝ เดเดกเดฟเดเตพ เดเดชเตเดชเดฟเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดถเตเดจเด เดเดเตเดเตพ เด
เดญเดฟเดฎเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต. เดญเดพเดเตเดฏเดตเดถเดพเตฝ, เดฒเดณเดฟเดคเดตเตเด เดฎเดจเตเดนเดฐเดตเตเดฎเดพเดฏ เดเดฐเต เดชเดฐเดฟเดนเดพเดฐเดฎเตเดฃเตเดเต - เดตเตเตฝเดกเตเดเดพเตผเดกเต เดเดชเตเดชเต เดเดกเดฟ. เดเดฐเต เดชเตเดคเดฟเดฏ เดเดชเตเดชเต เดเดกเดฟ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดเดชเดเดฟเดเตเดฐเดฎเด เดเดเตเดเตพ เดเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต, เดเดจเตเดจเดพเตฝ เดตเตเดฏเดเตเดคเดฎเดพเดฏ เดเดชเตเดชเต เดเดกเดฟเดเตเดเต เดชเดเดฐเด, เดธเตเดเตเดฐเตเตปเดทเตเดเตเดเดฟเดฒเต เดชเตเดฒเต เดตเตเตฝเดกเตเดเดพเตผเดกเต เดเดชเตเดชเต เดเดกเดฟ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด.
เด เดเดเตเดเดคเตเดคเดฟเตฝ, developer.apple.com-เตฝ เดเดเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเต เดชเตเตผเดคเตเดคเดฟเดฏเดพเดเตเดเดฟ, เดชเดเตเดทเต เดเดเตเดเตพ เดฌเตเดฐเตเดธเตผ เดตเดฟเตปเดกเต เดเตเดฑเตเดคเดพเดเตเดเดฟเดฒเตเดฒ. เดจเดฎเตเดเตเดเต เดชเตเดเดพเด
เด เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดเตเดเตพเดเตเดเต เดเดฐเต เดธเตเดตเดเดพเดฐเตเดฏ เดฑเดฟเดชเตเดชเตเดธเดฟเดฑเตเดฑเดฑเดฟเดฏเตเด เดเดชเตเดชเดฟเตพ เดกเตเดตเดฒเดชเตเดชเตผ เดชเตเดฐเตเดเตเดฐเดพเดฎเดฟเดฒเตเดเตเดเตเด เดเดฟเดคเตเดคเดฌเตเดฌเดฟเดฒเตเดเตเดเตเด เดเดเตโเดธเดธเต เดเดณเตเดณ เดเดฐเต เด เดเตเดเตเดฃเตเดเตเด เดเดตเดถเตเดฏเดฎเดพเดฃเตเดจเตเดจเต เดถเตเดฐเดฆเตเดงเดฏเตเดณเตเดณ เดเดฐเต เดตเดพเดฏเดจเดเตเดเดพเดฐเตป เดถเตเดฐเดฆเตเดงเดฟเดเตเดเต. เดซเตเดฎเดฟเดจเตเดฑเต เดเดฐเต เด เดเตเดเตเดฃเตเดเต เดเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต (เดชเตเดเตเดเตเดจเตเดจเต เด เดเตเดเดจเตเดฏเตเดจเตเดจเตเด เดเดฒเตเดฒเตเดเตเดเดฟเตฝ). [เดเดฎเตเดฏเดฟเตฝ เดชเดฐเดฟเดฐเดเตเดทเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต], เดถเดเตเดคเดฎเดพเดฏ เดเดฐเต เดชเดพเดธเตโเดตเตเดกเต เดเตเดฃเตเดเตเดตเดฐเดฟเด, developer.apple.com-เตฝ เดฐเดเดฟเดธเตเดฑเตเดฑเตผ เดเตเดฏเตเดฏเตเด, เดคเตเดเตผเดจเตเดจเต เด เดคเดฟเดจเต เดเดฐเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เด เดกเตเดฎเดฟเดจเดฟเดธเตเดเตเดฐเตเดฑเตเดฑเดฑเดพเดฏเดฟ เดจเดฟเดฏเดฎเดฟเดเตเดเตเด. เด เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดจเดฟเดเตเดเดณเตเดเต เดเดฎเตเดชเดจเดฟเดฏเตเดเต เดเดฟเดคเตเดคเดฌเต เดถเตเดเดฐเดคเตเดคเดฟเดฒเตเดเตเดเต เดเดเตเดเตพ เด เดเตเดเตเดฃเตเดเต เดเดเตโเดธเดธเต เดจเตฝเดเตเดเดฏเตเด AmazingAppMatch เดชเตเดฒเตเดฏเตเดณเตเดณ เดชเตเดฐเดฟเตฝ เดเดฐเต เดชเตเดคเดฟเดฏ เดธเตเดตเดเดพเดฐเตเดฏ เดถเตเดเดฐเด เดธเตเดทเตเดเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
3. เดซเดพเดธเตเดฑเตเดฑเตเดฒเตเดฏเตเดจเตเด เดฎเดพเดเตเดเต เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟเดฏเตเด เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
เดเดฐเต เดเตเตผเดฎเดฟเดจเตฝ เดคเตเดฑเดจเตเดจเต, เดชเตเดฐเตเดเดเตโเดฑเตเดฑเตเดณเตเดณ เดซเตเตพเดกเดฑเดฟเดฒเตเดเตเดเต เดชเตเดฏเดฟ เด
เดคเดฟเตฝ เดธเตเดเดฟเดชเตเดชเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเตเดชเตเดฒเต เดซเดพเดธเตเดฑเตเดฑเตโเดฒเตเดฏเตโเตป เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเตเด
$ fastlane init
เดฒเดญเตเดฏเดฎเดพเดฏ เดเดชเดฏเตเด เดเตเตบเดซเดฟเดเดฑเตเดทเดจเตเดเตพ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเดพเตป เดจเดฟเดเตเดเดณเตเดเต เดเดตเดถเตเดฏเดชเตเดชเตเดเตเด. เดจเดพเดฒเดพเดฎเดคเตเดคเต เดเดชเตเดทเตป เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด - เดฎเดพเดจเตเดตเตฝ เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดธเดเตเดเตเดเดฐเดฃเด.
เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเดจเต เดเดฐเต เดชเตเดคเดฟเดฏ เดกเดฏเดฑเดเตโเดเดฑเดฟ เดซเดพเดธเตเดฑเตเดฑเตโเดฒเตเตป เดเดฃเตเดเต, เด
เดคเดฟเตฝ เดฐเดฃเตเดเต เดซเดฏเดฒเตเดเตพ เด
เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต - Appfile, Fastfile. เดเตเดฐเตเดเตเดเดคเตเดคเดฟเตฝ, เดเดเตเดเตพ เดธเตเดตเดจ เดกเดพเดฑเตเดฑ Appfile-เตฝ เดธเดเดญเดฐเดฟเดเตเดเตเดเดฏเตเด เดซเดพเดธเตเดฑเตเดฑเตโเดซเตเดฒเดฟเตฝ เดเตเดฒเดฟเดเตพ เดเดดเตเดคเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต, เดเดคเดฟเดจเต Fastlane เดเตเตผเดฎเดฟเดจเตเดณเดเดฟเดฏเดฟเตฝ เดฒเตเตปเดธเต เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต. เดเดฆเตเดฏเตเดเดฟเด เดกเตเดเตเดฏเตเดฎเตเดจเตเดฑเตเดทเตป เดตเดพเดฏเดฟเดเตเดเดพเตป เดเดพเตป เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดฏเตเดจเตเดจเต:
เดจเดฟเดเตเดเดณเตเดเต เดชเตเดฐเดฟเดฏเดชเตเดชเตเดเตเด เดเตเดเตเดธเตเดฑเตเดฑเต เดเดกเดฟเดฑเตเดฑเดฑเดฟเตฝ Appfile เดคเตเดฑเดจเตเดจเต เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดซเตเดฎเดฟเดฒเตเดเตเดเต เดเตเดฃเตเดเตเดตเดฐเดฟเด:
app_identifier "com.company.amazingapp" # Bundle ID
apple_dev_portal_id "[email protected]" # ะกะพะทะดะฐะฝะฝัะน ะธะฝััะฐััััะบัััะฝัะน ะฐะบะบะฐัะฝั, ะธะผะตััะธะน ะฟัะฐะฒะพ ะฝะฐ ัะตะดะฐะบัะธัะพะฒะฐะฝะธะต iOS ะฟัะพะตะบัะฐ ะฒ Apple Developer Program.
team_id "LSDY3IFJAY9" # Your Developer Portal Team ID
เดเดเตเดเตพ เดเตเตผเดฎเดฟเดจเดฒเดฟเดฒเตเดเตเดเต เดฎเดเดเตเดเตเดเดฏเตเด เดเดฆเตเดฏเตเดเดฟเด เดฎเดพเดจเตเดตเตฝ เด เดจเตเดธเดฐเดฟเดเตเดเต เดเดเตเดเตพ เดชเตเดฐเตเดคเตเดคเด เดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเดพเตป เดคเตเดเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
$ fastlane match init
$ fastlane match development
เด เดเตเดคเตเดคเดคเดพเดฏเดฟ, เด เดญเตเดฏเตผเดคเตเดฅเดฟเดเตเด เดกเดพเดฑเตเดฑ เดจเตฝเดเตเด - เดถเตเดเดฐเด, เด เดเตเดเตเดฃเตเดเต, เดชเดพเดธเตเดตเตเดกเต เดฎเตเดคเดฒเดพเดฏเดต.
เดเดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต: เดจเดฟเดเตเดเตพ เดเดฆเตเดฏเด เดฎเดพเดเตเดเต เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟ เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดฑเดฟเดชเตเดชเตเดธเดฟเดฑเตเดฑเดฑเดฟ เดกเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดจเดฟเดเตเดเดณเตเดเต เดเดฐเต เดชเดพเดธเตโเดตเตเดกเต เดจเตฝเดเดพเตป เดเดตเดถเตเดฏเดชเตเดชเตเดเตเด. เด เดชเดพเดธเตโเดตเตเดกเต เดธเดเดฐเดเตเดทเดฟเดเตเดเตเดฃเตเดเดคเต เดตเดณเดฐเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต; CI เดธเตเตผเดตเตผ เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดฎเตเดชเตเตพ เดเดเตเดเตพเดเตเดเต เดเดคเต เดเดตเดถเตเดฏเดฎเดพเดฃเต!
เดซเดพเดธเตเดฑเตเดฑเตโเดฒเตเดฏเตโเตป เดซเตเตพเดกเดฑเดฟเตฝ เดเดฐเต เดชเตเดคเดฟเดฏ เดซเดฏเตฝ เดชเตเดฐเดคเตเดฏเดเตเดทเดชเตเดชเตเดเตเดเต - Matchfile. เดจเดฟเดเตเดเดณเตเดเต เดชเตเดฐเดฟเดฏเดชเตเดชเตเดเตเด เดเตเดเตเดธเตเดฑเตเดฑเต เดเดกเดฟเดฑเตเดฑเดฑเดฟเตฝ เดเดคเต เดคเตเดฑเดจเตเดจเต เดเดคเตเดชเตเดฒเต เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเตเด:
git_url("https://github.com/YourCompany/AmazingAppMatch") #ะกะพะทะดะฐะฝะฝัะน ะฟัะธะฒะฐัะฝัะน ัะตะฟะพะทะธัะพัะธะน ะดะปั ั
ัะฐะฝะตะฝะธั ัะตััะธัะธะบะฐัะพะฒ ะธ ะฟัะพัะฐะนะปะพะฒ.
type("development") # The default type, can be: appstore, adhoc, enterprise or development
app_identifier("com.company.amazingapp")
username("[email protected]") # Your Infrastructure account Apple Developer Portal username
เดญเดพเดตเดฟเดฏเดฟเตฝ Crashlytics เดเตเดเดพเดคเต/เด เดฒเตเดฒเตเดเตเดเดฟเตฝ AppStore-เตฝ เดชเตเดธเตโเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ, เด เดคเดพเดฏเดคเต เดจเดฟเดเตเดเดณเตเดเต เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดฑเต เดฌเดฃเตเดเดฟเตฝ เดเดกเดฟเดฏเดฟเตฝ เดเดชเตเดชเดฟเดเตเดจเตเดจเดคเดฟเดจเต, เดฌเดฟเตฝเดกเตเดเตพ เดธเตเตป เดเตเดฏเตเดฏเดพเตป เดเดเตเดเตพ เดฎเดพเดเตเดเต เดเดชเดฏเตเดเดฟเดเตเดเดฃเดฎเตเดเตเดเดฟเตฝ, เดเดเตเดเตพ เดเดคเต เดเตเดคเตเดฏเดฎเดพเดฏเดฟ เดชเตเดฐเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต.
เดชเดเตเดทเต, เดเดเตเดเตพ เดเตผเดเตเดเตเดจเตเดจเดคเตเดชเตเดฒเต, เดเตเดธเตเดฑเตเดฑเต เดฌเดฟเตฝเดกเดฟเตฝ เดเดชเตเดชเดฟเดเดพเตป เดเดเตเดเตพ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดตเตเตฝเดกเตเดเดพเตผเดกเต เดเดกเดฟ เดธเตเดทเตเดเดฟเดเตเดเต. เด เดคเดฟเดจเดพเตฝ, Fastfile เดคเตเดฑเดจเตเดจเต เดเดฐเต เดชเตเดคเดฟเดฏ เดชเดพเดค เดจเตฝเดเตเด:
lane :testing_build_for_firebase do
match(
type: "development",
readonly: true,
app_identifier: "com.company.*",
git_branch: "uitests" # ัะพะทะดะฐะตะผ ะพัะดะตะปัะฝัะน ะฑัะฐะฝั ะดะปั development ัะตััะธัะธะบะฐัะฐ ะดะปั ะฟะพะดะฟะธัะธ ัะตััะพะฒะพะน ัะฑะพัะบะธ.
)
end
เดธเดเดฐเดเตเดทเดฟเดเตเดเต เดเตเตผเดฎเดฟเดจเดฒเดฟเตฝ เดชเตเดฐเดตเตเดถเดฟเดเตเดเตเด
fastlane testing_build_for_firebase
เดซเดพเดธเตเดฑเตเดฑเตโเดฒเตเดฏเตโเตป เดเดเตเดเดจเตเดฏเดพเดฃเต เดเดฐเต เดชเตเดคเดฟเดฏ เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเต เดธเตเดทเตโเดเดฟเดเตเดเตเดเดฏเตเด เด เดคเต เดถเตเดเดฐเดคเตเดคเดฟเตฝ เดเดเตเดเดฏเตเด เดเตเดฏเตเดคเดคเตเดจเตเดจเต เดเดเตเดเตพ เดเดพเดฃเตเดจเตเดจเต. เดเตเดณเตเดณเดพเด!
XCode เดคเตเดฑเดเตเดเตเด. Match Development com.company.* เดเดจเตเดจ เดซเตเดฎเดฟเดจเตเดฑเต เดเดตเดถเตเดฏเดฎเดพเดฏ เดชเตเดฐเตเดตเดฟเดทเดจเดฟเดเดเต เดชเตเดฐเตเดซเตเตฝ เดเดชเตเดชเตเตพ เดเดเตเดเดณเตเดเต เดชเดเตเดเดฒเตเดฃเตเดเต, เด เดคเต AmazingApp, AmazingAppUITests เดเดพเตผเดเตเดฑเตเดฑเตเดเตพเดเตเดเดพเดฏเตเดณเตเดณ เดชเตเดฐเตเดตเดฟเดทเดจเดฟเดเดเต เดชเตเดฐเตเดซเตเตฝ เดตเดฟเดญเดพเดเดคเตเดคเดฟเตฝ เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเดฃเด.
เด
เดธเดเดฌเตเดฒเดฟเดเดเต เดเตเดธเตเดฑเตเดฑเตเดเตพเดเตเดเดพเดฏเดฟ เดฒเตเดฏเดฟเตป เดเตเตผเดเตเดเดพเตป เดเดคเต เดถเตเดทเดฟเดเตเดเตเดจเตเดจเต. เดจเดฎเตเดเตเดเต เดชเตเดเดพเด
เดเดฑเดฟเดเดฟเดจเตฝ เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฎเตเดเตเดเต เดเตเดชเตเดชเดฟ-เดชเตเดธเตเดฑเตเดฑเต เดเตเดฏเตเดฏเดพเด, เด เดเตเดเดจเต เดจเดฎเตเดฎเตเดเต lane testing_build_for_firebase เด เดตเดธเดพเดจเดฟเดเตเดเตเดจเตเดจเดคเต เดเดคเตเดชเตเดฒเตเดฏเดพเดฃเต:
lane :testing_build_for_firebase do
match(
type: "development",
readonly: true,
app_identifier: "com.company.*",
git_branch: "uitests"
)
scan(
scheme: 'AmazingAppUITests', # UI Test scheme
clean: true, # Recommended: This would ensure the build would not include unnecessary files
skip_detect_devices: true, # Required
build_for_testing: true, # Required
sdk: 'iphoneos', # Required
should_zip_build_products: true, # Must be true to set the correct format for Firebase Test Lab
)
firebase_test_lab_ios_xctest(
gcp_project: 'AmazingAppUITests', # Your Google Cloud project name (ะบ ััะพะน ัััะพัะบะต ะฒะตัะฝะตะผัั ะฟะพะทะถะต)
devices: [ # Device(s) to run tests on
{
ios_model_id: 'iphonex', # Device model ID, see gcloud command above
ios_version_id: '12.0', # iOS version ID, see gcloud command above
locale: 'en_US', # Optional: default to en_US if not set
orientation: 'portrait' # Optional: default to portrait if not set
}
]
)
end
เดธเตผเดเตเดเดฟเตพเดธเดฟเดเดฏเดฟเตฝ เดซเดพเดธเตเดฑเตเดฑเตเดฒเตเดฏเดฟเตป เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดชเตเตผเดฃเตเดฃเดฎเดพเดฏ เดตเดฟเดตเดฐเดเตเดเตพเดเตเดเต, เดเดฆเตเดฏเตเดเดฟเด เดกเตเดเตเดฏเตเดฎเตเดจเตเดฑเตเดทเตป เดตเดพเดฏเดฟเดเตเดเดพเตป เดเดพเตป เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดฏเตเดจเตเดจเต
เดเดเตเดเดณเตเดเต config.yml-เดฒเตเดเตเดเต เดเดฐเต เดชเตเดคเดฟเดฏ เดเดพเดธเตโเดเต เดเตเตผเดเตเดเดพเตป เดฎเดฑเดเตเดเดฐเตเดคเต:
build-for-firebase-test-lab:
macos:
xcode: "10.1.0"
working_directory: ~/project
shell: /bin/bash --login -o pipefail
steps:
- checkout
- attach_workspace:
at: ~/project
- run: sudo bundle install # ะพะฑะฝะพะฒะปัะตะผ ะทะฐะฒะธัะธะผะพััะธ
- run:
name: install gcloud-sdk # ะฝะฐ mac ะผะฐัะธะฝั ะฝะตะพะฑั
ะพะดะธะผะพ ัััะฐะฝะพะฒะธัั gcloud
command: |
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null ; brew install caskroom/cask/brew-cask 2> /dev/null
brew cask install google-cloud-sdk
- run:
name: build app for testing
command: fastlane testing_build_for_firebase # ะทะฐะฟััะบะฐะตะผ lane ัะฑะพัะบะธ ะธ ะพัะฟัะฐะฒะบะธ ะฒ firebase
4. เดจเดฎเตเดฎเตเดเต เดเตเดธเตเดฑเตเดฑเต เดฌเตเดเตเดเดฟเดจเตเดฑเต เดเดพเดฐเตเดฏเดฎเต? เดซเดฏเตผเดฌเตเดธเต เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต.
เดฒเตเดเดจเด เดเดจเตเดคเดฟเดจเตเดตเตเดฃเตเดเดฟเดฏเดพเดฃเต เดเดดเตเดคเดฟเดฏเดคเตเดจเตเดจเต เดจเดฎเตเดเตเดเต เดจเตเดเตเดเดพเด.
เดเดฐเตเดชเดเตเดทเต เดจเดฟเดเตเดเดณเตเดเต เดเดชเตเดชเต เดเดฐเต เดธเตเดเดจเตเดฏ เดชเตเดฒเดพเดจเดฟเตฝ Firebase เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต, เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเตเดชเดเตเดทเต เดเดฒเตเดฒเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด. เด เดเดฟเดธเตเดฅเดพเดจเดชเดฐเดฎเดพเดฏ เดตเตเดฏเดคเตเดฏเดพเดธเดฎเตเดจเตเดจเตเดฎเดฟเดฒเตเดฒ, เดเดพเดฐเดฃเด เดเตเดธเตเดฑเตเดฑเดฟเดเดเต เดเดตเดถเตเดฏเดเตเดเตพเดเตเดเดพเดฏเดฟ เดเดเตเดเตพเดเตเดเต เดเดฐเต เดตเตผเดทเดคเตเดคเต เดธเตเดเดจเตเดฏ เดเดชเดฏเตเดเดคเตเดคเตเดเต เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดธเตเดทเตเดเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด (เดคเดฃเตเดคเตเดค, เดถเดฐเดฟเดฏเดฒเตเดฒเต?)
เดเดเตเดเตพ เดเดเตเดเดณเตเดเต เดเตปเดซเตเดฐเดพเดธเตเดเตเดฐเดเตเดเตผ เด
เดเตเดเตเดฃเตเดเดฟเดฒเตเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเดจเตเดจเต (เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดฎเดฑเตเดฑเตเดคเตเดเตเดเดฟเดฒเตเด, เด
เดคเต เดชเตเดฐเดถเตเดจเดฎเดฒเตเดฒ), เดเดชเตเดชเด เดชเตเดเตเด
เดเดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต: lane firebase_test_lab_ios_xctest เดฒเต Fastfile-เดฒเต เดฎเตเดฎเตเดชเดคเตเดคเต เดเดเตเดเดคเตเดคเดฟเตฝ, gcp_project เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเตผ เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดจเดพเดฎเดตเตเดฎเดพเดฏเดฟ เดชเตเดฐเตเดคเตเดคเดชเตเดชเตเดเดฃเด.
เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดเดเตเดเตพเดเตเดเต เดจเดจเตเดจเดพเดฏเดฟ เดฏเตเดเดฟเดเตเดเตเดจเตเดจเต.
เดเดพเดฌเต เด
เดเดฏเตเดเตเดเดฐเตเดคเต, เด
เดคเต เด
เดเตเดเตเดฃเตเดเดฟเตฝ เดฐเดเดฟเดธเตเดฑเตเดฑเตผ เดเตเดฏเตเดฏเตเด
เดเตเดเดฟเตพ เดเดฐเต เดตเตผเดทเดคเตเดคเตเดเตเดเต $300 เดจเตฝเดเตเดจเตเดจเต, เดเดคเต เดเดเตเดเตเดเตเดธเตเดฑเตเดฑเตเดเดณเตเดเต เดชเดถเตเดเดพเดคเตเดคเดฒเดคเตเดคเดฟเตฝ เดธเตเดตเดจเดคเตเดคเดฟเดจเตเดฑเต เดเดฐเต เดตเตผเดทเดคเตเดคเต เดธเตเดเดจเตเดฏ เดเดชเดฏเตเดเดคเตเดคเดฟเดจเต เดคเตเดฒเตเดฏเดฎเดพเดฃเต. เดเดเตเดเตพ เดจเดฟเดเตเดเดณเตเดเต เดชเตเดฏเตโเดฎเตเดจเตเดฑเต เดตเดฟเดตเดฐเดเตเดเตพ เดจเตฝเดเตเดเดฏเตเด $1 เดจเตเดฑเต เดเตเดธเตเดฑเตเดฑเต เดกเตเดฌเดฟเดฑเตเดฑเดฟเดจเดพเดฏเดฟ เดเดพเดคเตเดคเดฟเดฐเดฟเดเตเดเตเดเดฏเตเด เดจเดฟเดเตเดเดณเตเดเต เด เดเตเดเตเดฃเตเดเดฟเดฒเตเดเตเดเต $300 เดธเตเดตเตเดเดฐเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด. เดเดฐเต เดตเตผเดทเดคเตเดคเดฟเดจเตเดถเตเดทเด, เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดธเตเดตเดฏเดฎเตเดต เดเดฐเต เดธเตเดเดจเตเดฏ เดคเดพเดฐเดฟเดซเต เดชเตเดฒเดพเดจเดฟเดฒเตเดเตเดเต เดฎเดพเดฑเตเดฑเดชเตเดชเตเดเตเด, เด เดคเดฟเดจเดพเตฝ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดชเดฃเดจเดทเตเดเดคเตเดคเตเดเตเดเตเดฑเดฟเดเตเดเต เดตเดฟเดทเดฎเดฟเดเตเดเตเดฃเตเดเดคเดฟเดฒเตเดฒ.
เดจเดฎเตเดเตเดเต เดซเดฏเตผเดฌเตเดธเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเตเดณเตเดณ เดเดพเดฌเดฟเดฒเตเดเตเดเต เดฎเดเดเตเดเดพเด, เด เดคเต เดฌเตเดฒเตเดธเต เดคเดพเดฐเดฟเดซเต เดชเตเดฒเดพเดจเดฟเดฒเตเดเตเดเต เดฎเดพเดฑเตเดฑเดพเด - เดเดชเตเดชเตเตพ เดชเดฐเดฟเดงเดฟ เดเดตเดฟเดเตเดเดพเตฝ เดเดเตเดเตพเดเตเดเต เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดจเตฝเดเดพเดจเตเดฃเตเดเต.
เดเดฟเดเตเดฒเตเดกเต เดเดจเตเดฑเตผเดซเตเดธเดฟเตฝ, เดเดเตเดเดณเตเดเต เดซเดฏเตผเดฌเตเดธเต เดชเตเดฐเตเดเดเตโเดฑเตเดฑเต เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด, "เดกเดฏเดฑเดเตโเดเดฑเดฟ" เดชเตเดฐเดงเดพเดจ เดฎเตเดจเต เดเดจเด เดคเดฟเดฐเดเตเดเตเดเตเดคเตเดคเต เดเตเดฒเตเดกเต เดเตเดธเตเดฑเตเดฑเดฟเดเดเต เดเดชเดฟเดเดฏเตเด เดเตเดฒเตเดกเต เดเตเตพเดธเต เดฑเดฟเดธเตพเดเตเดเต เดเดชเดฟเดเดฏเตเด เดเตเตผเดเตเดเตเด.
เดคเตเดเตผเดจเตเดจเต "IAM เดเตปเดกเต เด
เดกเตเดฎเดฟเดจเดฟเดธเตเดเตเดฐเตเดทเตป" เดเดจเตเดจ เดฎเตเดจเต เดเดจเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด -> เดธเตเดตเดจ เด
เดเตเดเตเดฃเตเดเตเดเตพ -> เดธเตเดตเดจ เด
เดเตเดเตเดฃเตเดเต เดธเตเดทเตเดเดฟเดเตเดเตเด. เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดเดกเดฟเดฑเตเดฑเต เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เด
เดตเดเดพเดถเด เดเดเตเดเตพ เดจเตฝเดเตเดจเตเดจเต.
JSON เดซเตเตผเดฎเดพเดฑเตเดฑเดฟเตฝ เดเดฐเต API เดเต เดธเตเดทเตโเดเดฟเดเตเดเตเด
เดเดเตเดเตพเดเตเดเต เดกเตเตบเดฒเตเดกเต เดเตเดฏเตโเดค JSON เดเตเดฑเดเตเดเต เดเดดเดฟเดเตเดเต เดเดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดฐเตเด, เดเดจเตเดจเดพเตฝ เดเดชเตเดชเตเตพ เดเตเดธเตเดฑเตเดฑเต เดฒเดพเดฌเต เดธเดเตเดเตเดเดฐเดฃเด เดชเตเตผเดคเตเดคเดฟเดฏเดพเดฏเดคเดพเดฏเดฟ เดเดเตเดเตพ เดชเดฐเดฟเดเดฃเดฟเดเตเดเตเด.
5. CircleCI เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
เดจเตเดฏเดพเดฏเดฎเดพเดฏ เดเดฐเต เดเตเดฆเตเดฏเด เดเดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจเต - เดชเดพเดธเตโเดตเตเดกเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดจเตเดคเตเดเตเดฏเตเดฏเดฃเด? เดเดเตเดเดณเตเดเต เดฌเดฟเตฝเดกเต เดฎเตเดทเตเดจเตเดฑเต เดเตปเดตเดฏเตเตบเดฎเตเดจเตเดฑเต เดตเตเดฐเดฟเดฏเดฌเดฟเตพ เดฎเตเดเตเดเดพเดจเดฟเดธเด เดเดเตเดเดณเตเดเต เดชเดพเดธเตโเดตเตเดกเตเดเดณเตเด เดฎเดฑเตเดฑเต เดธเตเตปเดธเดฟเดฑเตเดฑเตเดตเต เดกเดพเดฑเตเดฑเดฏเตเด เดธเตเดฐเดเตเดทเดฟเดคเดฎเดพเดฏเดฟ เดธเดเดญเดฐเดฟเดเตเดเดพเตป เดธเดนเดพเดฏเดฟเดเตเดเตเด. เดธเตผเดเตเดเดฟเตพเดธเดฟเด เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเดณเดฟเตฝ, เดเตปเดตเดฏเตเตบเดฎเตเดจเตเดฑเต เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเตพ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด
เดเตเดเดพเดคเต เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเตพ เดธเดเตเดเดฎเดพเดเตเดเตเด:
- เดเต: GOOGLE_APPLICATION_CREDENTIALS
เดฎเตเดฒเตเดฏเด: gCloud เดธเตเดตเดจ เด เดเตเดเตเดฃเตเดเต เดเตเดฏเตเดเต json เดซเดฏเดฒเดฟเดจเตเดฑเต เดเดณเตเดณเดเดเตเดเด - เดเต: MATCH_PASSWORD
เดฎเตเดฒเตเดฏเด: เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฟเดคเตเดคเดฌเต เดถเตเดเดฐเด เดกเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเดพเดธเตโเดตเตเดกเต - เดเต: FASTLANE_PASSWORD
เดฎเตเดฒเตเดฏเด: เดเดชเตเดชเดฟเตพ เดกเตเดตเดฒเดชเตเดชเตผ เดชเตเตผเดเตเดเตฝ เดเตปเดซเตเดฐเดพเดธเตเดเตเดฐเดเตเดเตผ เด เดเตเดเตเดฃเตเดเต เดชเดพเดธเตโเดตเตเดกเต
เดเดเตเดเตพ เดฎเดพเดฑเตเดฑเดเตเดเตพ เดธเดเดฐเดเตเดทเดฟเดเตเดเตเดเดฏเตเด เดเดฐเต PR เดธเตเดทเตโเดเดฟเดเตเดเตเดเดฏเตเด เด เดตเดฒเตเดเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ เดเดเตเดเดณเตเดเต เดเตเด เดฒเตเดกเดฟเดจเต เด เดฏเดฏเตเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เดซเดฒเดเตเดเตพ
เด เดฒเดณเดฟเดคเดฎเดพเดฏ เดเตเดคเตเดฐเดฟเดฎเดคเตเดตเดเตเดเดณเตเดเต เดซเดฒเดฎเดพเดฏเดฟ, เดเตเดธเตเดฑเตเดฑเดฟเดเดเต เดธเดฎเดฏเดคเตเดคเต เดเดชเดเดฐเดฃ เดธเตเดเตเดฐเตเดจเดฟเตฝ เดตเตเดกเดฟเดฏเต เดฑเตเดเตเดเตเตผเดกเต เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดเดดเดฟเดตเตเดณเตเดณ เดเดฐเต เดจเดฒเตเดฒ เดธเตเดฅเดฟเดฐเดคเดฏเตเดณเตเดณ เดตเตผเดเตเดเดฟเดเดเต เดธเตเดฑเตเดฑเดพเตปเดกเต เดเดเตเดเตพเดเตเดเต เดฒเดญเดฟเดเตเดเต. เดเตเดธเตเดฑเตเดฑเต เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดเดพเตป iPhone X เดเดชเดเดฐเดฃ เดฎเตเดกเตฝ เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเดฟ, เดเดจเตเดจเดพเตฝ เดซเดพเด เดตเตเดฏเดคเตเดฏเดธเตเดค เดฎเตเดกเดฒเตเดเดณเตเดเตเดฏเตเด iOS เดชเดคเดฟเดชเตเดชเตเดเดณเตเดเตเดฏเตเด เดธเดเดฏเตเดเดจเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเดฎเตเดชเดจเตเดจเดฎเดพเดฏ เดคเดฟเดฐเดเตเดเตเดเตเดชเตเดชเต เดจเตฝเดเตเดจเตเดจเต.
เดฐเดฃเตเดเดพเด เดญเดพเดเด เดเดฐเต เดเตปเดกเตเดฐเตเดฏเดฟเดกเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเดจเดพเดฏเดฟ เดซเดฏเตผเดฌเตเดธเต เดเตเดธเตเดฑเตเดฑเต เดฒเดพเดฌเดฟเดจเตเดฑเต เดเดเตเดเด เดเดเตเดเดฎเดพเดฏเตเดณเตเดณ เดธเดเตเดเตเดเดฐเดฃเดคเตเดคเดฟเดจเดพเดฏเดฟ เดจเตเดเตเดเดฟเดตเดฏเตเดเตเดเตเด.
เด
เดตเดฒเดเดฌเด: www.habr.com