回溯法和生成測試法比較

2021-08-31 18:14:49 字數 672 閱讀 6986

回溯法就是是把問題劃分為若干個步驟然後遞迴求解,如果本層沒有合適的解,將返回上一層,這個過程中剪了很多不必要的資料,所以效率較高。

生成測試時將所有的都窮舉出來,然後測試。

問題:素數環 

回溯法:對應n=16,不輸出情況下使用43ms

#include#include#include#include#includeusing namespace std;

int visited[22]= ,a[22];

int primelist[22*2]= ;

int n;

bool isprime(int x)

void dfs(int cur)

;int n;

bool isprime(int x)

int main()

a[1]=1;

visited[1]=1;

int p=1,j;

while(cin>>n)

} while(next_permutation(a+2,a+n+1));

end=clock(); //程式結束用時

double endtime=(double)(end-start)/clocks_per_sec;

cout<<"total time:"<}

}

混合測試法

通過場景操作引入變化 測試人員必須找到其他替代的方法來執行場景中每個步驟或動作。如果要查詢商品,可以通過名稱來查詢,也可以通過商品編號來查詢,應為被測試軟體提供了這兩個功能,那麼我們就可以通過建立衍生場景的方式來測試第二種選擇。同樣,購買商品時,我們可以使用鍵盤快捷鍵而不是滑鼠來操作。還可以繞過建立...

組合測試法中的全對偶測試法

在測試設計過程中,大家都會遇到很多變數進行組合的情況,對相互組合的兩個或更多變數進行的測試活動就是組合測試,一般情況下都是使用組合測試法,但這種情況很多測試人員研究得不夠深入。測試人員需要開發或了解組合測試法中使用到的工具,通過程式得到用例組合才更加合理和全面,如果不在測試中一起改變某些變數,就會遺...

組合測試法中的全對偶測試法

在測試設計過程中,大家都會遇到很多變數進行組合的情況,對相互組合的兩個或更多變數進行的測試活動就是組合測試,一般情況下都是使用組合測試法,但這種情況很多測試人員研究得不夠深入。測試人員需要開發或了解組合測試法中使用到的工具,通過程式得到用例組合才更加合理和全面,如果不在測試中一起改變某些變數,就會遺...