摘要:新公司使用禪道作管理系統(tǒng)。每次產(chǎn)品上線的時(shí)候,所有的測(cè)試人員測(cè)試出之就就提在禪道上。避免本頁(yè)跳轉(zhuǎn)導(dǎo)致腳本失效。并給它綁定事件。很多瀏覽器插件,其實(shí)也是在別人的網(wǎng)站上運(yùn)行自己的腳本實(shí)現(xiàn)一些操作。
新公司使用禪道作bug管理系統(tǒng)。每次產(chǎn)品上線的時(shí)候,所有的測(cè)試人員測(cè)試出bug之就就提在禪道上。
由于我們公司目前的測(cè)試只有一個(gè),就把很多產(chǎn)品拉來(lái)湊數(shù)。他們分不清bug和需求。所以往往出現(xiàn)的情況是一大屏的bug。但實(shí)際上能改的沒(méi)幾個(gè)。并且有很多bug是后端的。
要從那么多bug中找出來(lái)自己能改的,每次都要從那么多bug中來(lái)看,往往看得眼都花了,也沒(méi)找出來(lái)幾個(gè)有效bug,偏偏又不能處理掉,因?yàn)槠渌丝赡芤础?/p>
于是決定花點(diǎn)時(shí)間寫(xiě)個(gè)腳本來(lái)幫我處理一下那些干擾信息。把那些我不需要看到的條目隱藏起來(lái)。
要在bug列表table每一行加一個(gè)隱藏按鈕。點(diǎn)擊的話(huà)會(huì)隱藏掉該行。并且把該行的checkbox的value值記錄到localStorage中。
在console控制臺(tái)運(yùn)行腳本,會(huì)做這幾件事:
1.給table所有的a標(biāo)簽加屬性target="_blank",這樣就會(huì)到新頁(yè)面打開(kāi)bug詳情。避免本頁(yè)跳轉(zhuǎn)導(dǎo)致腳本失效。
2.把所有tr行中的checkbox的值放到該tr上。data-id屬性中。方便后續(xù)操作。
3.每行加一個(gè)隱藏按鈕。并給它綁定事件。點(diǎn)擊按鈕隱藏此行。把最后一個(gè)td加長(zhǎng)。
4.把localStorage保存的所有值的行隱藏起來(lái)。
為了避免翻頁(yè)引起頁(yè)面跳轉(zhuǎn)。先要把每一頁(yè)的數(shù)量調(diào)大一些。這樣操作就在同一個(gè)頁(yè)面上,不需要多次運(yùn)行腳本了。
原來(lái)的bug可能有這么多:
運(yùn)行腳本之后的效果(很多條干擾信息已經(jīng)被我隱藏掉了):
可以看到每一行的右邊都加了一個(gè)隱藏按鈕。我們看過(guò)bug之后覺(jué)得是自己不用理會(huì)的。就可以點(diǎn)擊隱藏。
并且下次打開(kāi)頁(yè)面再次運(yùn)行腳本,你之前隱藏過(guò)的就會(huì)自動(dòng)隱藏起來(lái)。
這樣就能很大程度上減少干擾信息了。
另外,這個(gè)代碼通用性也是比較強(qiáng)的。換一個(gè)系統(tǒng),要實(shí)現(xiàn)類(lèi)似的功能只需要稍作改動(dòng)就可以。
下面是代碼:
function CD(){}
CD.prototype = {
init:function(){
this.open();
this.hideItems();
this.bindEvent();
},
open:function(){
//所有a標(biāo)簽新標(biāo)簽打開(kāi)
$("td a").attr("target","_blank");
//給每一行加一個(gè)我們的按鈕。
$(".s-hide").remove();
$("tr.text-center td:last-child").append("隱藏");
$("tr th:last").width(170);
//給tr加上id。方便操作
$("tr").each(function(index, el) {
$(this).attr("data-id",$(this).find("input:checkbox").val());
});
},
bindEvent:function(){
//點(diǎn)擊隱藏。
$("body").on("click", ".s-hide", function(event) {
var id = $(this).parents("tr").find("input:checkbox").val();
var hideStr = localStorage.hideStr || "";
var hideArr = hideStr.split("-");
hideArr.push(id);
localStorage.hideStr = hideArr.join("-");
$(this).parents("tr").hide();
});
},
//初始化的時(shí)候隱藏我們隱藏過(guò)的。
hideItems:function(){
var hideStr = localStorage.hideStr || "";
var hideArr = hideStr.split("-");
var len = hideArr.length;
for (var i = 0; i < len; i++) {
$("tr[data-id="+hideArr[i]+"]").hide();
}
},
//顯示隱藏的。
show:function(){
localStorage.hideStr = "";
$("tr").show();
}
}
//調(diào)用
var cd = new CD;
cd.init();
// 顯示全部請(qǐng)手動(dòng)調(diào)用 cd.show();
嗯,JavaScript能做的事實(shí)在太多。
面對(duì)別人的網(wǎng)站,我們也可以大有可為。
很多瀏覽器插件,其實(shí)也是在別人的網(wǎng)站上運(yùn)行自己的腳本實(shí)現(xiàn) 一些操作。比如攔截廣告。搶月餅。。。
作為一個(gè)前端程序員來(lái)講,順手寫(xiě)幾行腳本提高一點(diǎn)工作效率也是不錯(cuò)的。
github:https://github.com/liusaint/J...
注:本文同步發(fā)表在我的CSDN博客上。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/88032.html
目錄 一、禪道 一、測(cè)試工具背景 二、測(cè)試管理工具 三、測(cè)試工具介紹 四、禪道介紹 五、禪道操作 7. 創(chuàng)建發(fā)布 8. 測(cè)試團(tuán)隊(duì) 二、缺陷報(bào)告 三、測(cè)試報(bào)告 一、概要 二、測(cè)試過(guò)程 三、缺陷分析 四、測(cè)試總結(jié) 四、接口測(cè)試以及用例編寫(xiě) 五、Fiddler 好文推薦 一、禪道 一、測(cè)試工具背景 當(dāng)測(cè)試環(huán)境搭建完成后,測(cè)試人員將在自己搭建的環(huán)境上執(zhí)行測(cè)試用例,開(kāi)展測(cè)試工作。測(cè)試人員在執(zhí)行測(cè)試用例的過(guò)...
摘要:引言禪道的使用在其手冊(cè)中有比較詳細(xì)的介紹,大家可以參考其中還包括介紹的視頻。應(yīng)用范圍禪道主要應(yīng)用于軟件項(xiàng)目的管理。軟件完整使用其支持的流程主要按照敏捷開(kāi)發(fā)的流程支持的。擴(kuò)展機(jī)制,幾乎可以對(duì)禪道的任何地方進(jìn)行擴(kuò)展。 ...
摘要:協(xié)議學(xué)習(xí)常見(jiàn)請(qǐng)求方法學(xué)習(xí)和學(xué)習(xí)接口的基本概念接口文檔認(rèn)識(shí)接口測(cè)試用例編寫(xiě)接口測(cè)試工具使用軟件測(cè)試自動(dòng)化進(jìn)階性能測(cè)試性能測(cè)試的技術(shù)要求很高,不僅僅要對(duì)性能測(cè)試的指標(biāo)測(cè)試分類(lèi)測(cè)試設(shè)計(jì)有很深刻的理解。 ...
摘要:作為一個(gè)基礎(chǔ)的還會(huì)占有一些優(yōu)勢(shì)的,因?yàn)槟阒皼](méi)有過(guò)相關(guān)的經(jīng)驗(yàn),那么你在領(lǐng)域可以說(shuō)是一張白紙。不嘗試怎么知道自己能不能行呢要相信自己,零基礎(chǔ)的也是可以做軟件測(cè)試工程師的。 有IT的背景人可能在第一階段基礎(chǔ)的學(xué)習(xí)中更加快速,但是接下來(lái)關(guān)于測(cè)試的階段,有無(wú)基礎(chǔ)并無(wú)太大區(qū)別。 接觸過(guò)IT的人,比如編...
閱讀 2153·2021-11-15 11:36
閱讀 1461·2021-09-23 11:55
閱讀 2486·2021-09-22 15:16
閱讀 2028·2019-08-30 15:45
閱讀 1862·2019-08-29 11:10
閱讀 1025·2019-08-26 13:40
閱讀 915·2019-08-26 10:44
閱讀 3168·2019-08-23 14:55