私はJasmineを学習しています。複雑なソート機能をテストしようとしています。基本的に、( '.overview_table_header')クラスがクリックされると、列の名前(列、列、列)から$(this)に、Likes、Checkins、Stateなどが設定されます。ジャスミンで複雑なソート機能をテストする
選択された。それから、likes列をソートし、GET要求をサーバーに送信します。私はジャスミンでこのプロセスをテストしたいと思いますし、どこから始めるべきかわかりません。どのようにテストを書くのですか?私はこれまでのことをお見せしましょう。
Javascriptをテストするために:
$('.overview_table_header').click(function() {
header = $(this);
var col2 = $.trim($(this).text());
var sort2 = header.data('sort');
$.get("/search", { promotion_id: $("input[name=promotion_id]").val(), chag_col: $.trim($(this).text()), chag_sort: header.data('sort'), page: 1, q:$("input[name=q]").val(), etime: $("input[name=etime]").val(), stime: $("input[name=stime]").val() },
function(data) {
$('#pages').html(data.html);
$('#pagelink').html(data.page_links);
header.data('sort', data.sort);
if (data.sort == 'ASC') {
arrow = '<';
}
else {
arrow = '>';
}
$('span.arrow').html('');
header.siblings('.arrow').html(arrow);
$("input[name=chag_sort]").val(sort2);
$("input[name=chag_col]").val(col2);
console.log(data.sort);
}
);
});
マイジャスミンテスト:
describe("Sort Feature", function() {
it("sorts columns of data based on user clicks", funciton(){
loadFixtures("home.html");
$(".overview_table_header")
});
});
マイフィクス
<table>
<thead>
<tr>
<th class='col_1'>
<span class='overview_table_header'>Total Checkins</span>
</th>
<th class='col_2'>
<span class='overview_table_header'>Trending Place</span>
</th>
<th class='col_3'>
<span class='overview_table_header'>Top Place</span>
</th>
<th class='col_4'>
<span class='overview_table_header'>Top State</span>
</th>
</tr>
</thead>