1. 程式人生 > >論文: Generating Software Test Data by Evolution---自己覺得很好的句子----(1)introduction

論文: Generating Software Test Data by Evolution---自己覺得很好的句子----(1)introduction

1. 闡釋問題:

AN important aspect of software testing involves judging how well a series of test inputs tests a piece of code.
Usually, the goal is to uncover as many faults as possible with a potent set of tests since a test series that has the
potential to uncover many faults is obviously better than one that can only uncover a few. Unfortunately, it is almost
impossible to predict how many faults will be uncovered by a given test set.

This is not only because of the diversity of
the faults themselves, but because the very concept of a fault is only vaguely defined (c.f., [3]). Still, it is useful to have
some standard of test adequacy, to help in deciding when a program has been tested thoroughly enough.
This leads to
the establishment of test adequacy criteria

說明: 軟體測試的重要一點就是: 判斷一系列測試輸入如何測試一個程式碼段。——》問題就是你沒有辦法確定一份測試輸入(集合)能夠檢測出多少的錯誤——》建立測試充分性標準

 Once a test adequacy criterion has been selected, the question that arises next is how to go about creating a test
set that is good with respect to that criterion. Since this can be difficult to do by hand, there is a need for automatic test
data generation.

 有了測試充分性標準——》問題怎麼建立符合測試標準的測試集合?——》 自動生成此測試資料

Unfortunately, test data generation leads to an undecidable problem for many types of adequacy criteria. Insofar as
the adequacy criteria require the program to perform a specific action, such as reaching a certain statement, the halting problem can be reduced to a problem of test data generation. To circumvent this dilemma, test data generation algorithms use heuristics, meaning that they do not always succeed in finding an adequate test input. Comparisons of different test data generation schemes are usually aimed at determining which method can provide the most benefit with limited resources.

 測試資料生成會導致許多型別的充分性標準的產生的測試集沒有辦法判定——》故而會設定一個具體的問題,作為評測每一個測試集的標準,但是式演算法進怎樣去判定?-——》引入啟發式演算法

整體的感覺: 亦步亦趨的闡明一個問題,首先是又這個問題導致了我們想出了這種解決方案,但是這種方案的問題是##,我們想出了@##方法, 等等一層層的解析問題

對於有一些表達自己並不是太清楚,所以 闡述的有些問題。

句子表達:

 (1)To circumvent this dilemma ,           為了避免這一進退兩難的困境

(2)××× 概念 was originally proposed by [1] and then investigated further by [2], [4],and [5].
(3)nudging them ever closer to values that actually do satisfy the requirement.  使他們越來越接近真正滿足需求的價值觀。 

nudging  英 ['nʌdʒɪŋ]  美 ['nʌdʒɪŋ]  v.(朝某方向)輕推( nudge的現在分詞 ); (使)達到; (暗指與性有關)摟摟抱抱;

(4) In essence, 從本質上講,

(5) The broader implication is that, 更廣泛的含義:
 

gradient descent suffers from some well-known weaknesses. Thus, it is appealing to use more sophisticated techniques for function minimization, such as genetic search [6], simulated annealing [7], or tabu search [8].
 

The broader implication is that, due to their simplicity, toy programs fail to expose the limitations of some test-data
generation techniques.

更廣泛的含義是,由於它們的簡單性,toy程式無法暴露某些測試資料生成技術的侷限性。