<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 第五部分:文本解析 > 原文:[Part V: Parsing Text](https://learncodethehardway.org/more-python-book/part4.html) > 譯者:[飛龍](https://github.com/wizardforcel) > 協議:[CC BY-NC-SA 4.0](http://creativecommons.org/licenses/by-nc-sa/4.0/) > 自豪地采用[谷歌翻譯](https://translate.google.cn/) 本書的這一部分將教你如何處理文本,特別是,它是文本解析的正式開始。所以我不會涉及編程語言理論的所有不同理論元素,因為這是整個大學的學位。這只是簡單而樸素的文本解析的開始,可以在許多編程環境中使用它。 大多數程序員與解析文本有著奇怪的關系。所有計算機程序設計的核心是解析,它是計算機科學中最容易理解和形式化的方向之一。解析數據在計算中無處不在。你可以在網絡協議,編譯器,電子表格,服務器,文本編輯器,圖形渲染器,以及擁有人機或其他計算機接口的任何東西中找到它。即使兩臺計算機正在發送固定的二進制協議,盡管缺少文本,仍然存在解析的層面。 我要教你解析,因為它是一種容易理解的可靠技術,可以產生可靠的結果。當你面對可靠地處理一些輸入并給出準確的錯誤時,你將求助于解析器,而不是手動編寫一個。另外,一旦學習了解析的基礎,就會更容易學習新的編程語言,因為你可以理解他們的語法。 ## 代碼覆蓋簡介 在這部分中,你仍然應該嘗試拆解和剖析你編寫的任何代碼。我在這部分中增加的新東西,是代碼覆蓋的概念。代碼覆蓋的想法是,你實際上不知道在編寫自動測試時是否測試了大多數情況。你可以使用形式邏輯來開發一個理論,即你覆蓋了一切東西,但是我們知道人類的大腦非常難以在自己的思維中找到缺陷。這就是為什么你在這本書中使用“創造然后批判”的循環。在嘗試創建某些東西的時候,你很難分析自己的想法。 代碼覆蓋是一種方法,至少能夠了解你在應用中測試的東西。它不會找到你所有的缺陷,但它至少會顯示,你已經命中每個可能的代碼分支。如果沒有覆蓋,你實際上不知道你是否測試了每個分支。一個非常好的例子是故障處理。大多數自動測試僅測試最可靠的條件,并且不會測試錯誤處理。當你運行覆蓋時,你會發現你忘記的所有方法,來測試錯誤處理代碼。 代碼覆蓋也可以幫助你避免過度測試代碼。我曾經從事測試驅動開發(TDD)愛好者的項目,他們因 12/1 的測試/代碼比而感到自豪(這意味著每一行代碼都有 12 行測試)。一個簡單的代碼覆蓋分析顯示,他們只測試了 30% 的代碼,其中許多線路以同樣的方式進行了 6~20 次的測試。同時,像數據庫查詢中的異常情況那樣的簡單錯誤是完全未經測試的,并導致頻繁的錯誤。最終,這些測試套件成為一種負擔,阻止了項目的成長,并且只會吞掉開發人員的工作安排。難怪這么多敏捷咨詢公司討厭代碼覆蓋。 在本練習的視頻中,你將看到我運行測試,并使用代碼覆蓋來確認我正在測試什么。我要求你做同樣的事情,并且有使其變得容易的工具。我將向你展示如何閱讀測試覆蓋結果,以及如何確保你高效地測試你可以測試的一切東西。目標是擁有一個徹底的自動化測試套件,但不會浪費你的努力,所以你不會連續測試 12 次只有 30% 的代碼。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看