夏季第一天-测试驱动开发

今年夏天,我手上有很多时间,所以我将尝试学习尽可能多的东西。 然后,我将写下我的日常成就和发现。

我是奥本大学的软件工程系学生。 我是一名大四学生,将于今年12月毕业。 我在Co-Op担任iOS开发人员方面有相当多的经验,并且对Android和Web开发感到满意。 我今年夏天的目标是为求职面试官做准备,并尽可能多地学习。 我真的很想深入iOS世界,很少有我真正想要从事的项目。 因此,事不宜迟,这里是我今天学到的东西。

我正在开发一个应用程序,该应用程序将使用Spotify为专辑,歌曲和歌手提供的应用程序网址来规避Spotify上10,000首歌曲的限制。 这个想法是,如果您将相册添加到我的应用程序中的列表中,则只需单击我的应用程序中的相册,即可将您带到Spotify中的相册。 这样,您可以根据需要添加任意数量的相册。

我要做的第一件事是使用“测试驱动开发”编写应用程序。 我听说过罗伯特·马丁(Robert Martin)的“ 清洁代码”中的做法(强烈建议未读过的任何人),但我从未用它来构建任何东西。 我主要关心的是测试异步网络代码。 但是,经过一番挖掘,我找到了Apple的这篇文章:

测试期望的异步操作
异步操作是不能在当前代码流中直接执行的操作。 可能是…… developer.apple.com

通过使用XCTestExpectations,您可以使测试等待一定的时间,以查看应用程序是否具有XCTAssert函数。 如果确实符合XCTAssert,则会对其进行评估,然后测试通过或失败。 这样就不会浪费时间,测试只需占用网络通话的时间。

然后,我开始将我的应用程序与Spotify集成在一起。 我决定从登录页面开始,因此我按照Spotify开发人员网站上的说明将我的应用程序与他们的平台集成在一起。 我已成功登录并且会话正常运行。 该应用程序将打开Spotify以登录到该应用程序,然后将其重定向回您的应用程序。 我了解到可以使用“应用程序URL”执行此操作。但是,我不知道如何执行此操作,但是可以使用以下文章来学习:

如何使用自定义URL打开iOS应用
本教程向您展示如何使用自定义工具从iOS应用程序内或从野生动物园浏览器中打开另一个iOS应用程序… kitefaster.com

我还在Github上设置了我的应用程序,并将其开源,以供所有人使用。 链接在这里:

harrysummers /无限图书馆
通过在GitHub上创建一个帐户为Infinite-Library开发做出贡献。 github.com