一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng)及方法
【專利摘要】本發(fā)明涉及一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng)及方法,能夠配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式;進(jìn)入待測(cè)設(shè)備的串口,對(duì)重?fù)苷?qǐng)求報(bào)文進(jìn)行檢測(cè);在測(cè)試結(jié)論中輸出每次匹配到重?fù)苷?qǐng)求報(bào)文時(shí)的系統(tǒng)時(shí)間。本發(fā)明將測(cè)試過程通過編寫成自動(dòng)化腳本來實(shí)現(xiàn),使功能項(xiàng)的配置和功能的測(cè)試現(xiàn)一鍵自動(dòng)化。本發(fā)明有效簡(jiǎn)化測(cè)試步驟,縮短測(cè)試周期,減少誤測(cè)率。
【專利說明】一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)測(cè)試領(lǐng)域,特別涉及一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng)及方法。
【背景技術(shù)】
[0002]由于PPPoE的計(jì)費(fèi)功效,PPPoE是目前家庭用戶訪問Internet最常用的一種方式;在PPPoE中有三種模式,分別是自動(dòng)連接、按需撥號(hào)和手動(dòng)連接。自動(dòng)連接是指在PPPoE撥號(hào)不成功時(shí),設(shè)備會(huì)間隔一段時(shí)間自動(dòng)重?fù)?;按需撥?hào)是指當(dāng)有向外發(fā)送的報(bào)文請(qǐng)求時(shí),設(shè)備進(jìn)行撥號(hào)連接,而當(dāng)一段時(shí)間沒有向外發(fā)送的報(bào)文請(qǐng)求時(shí),則斷開連接;手動(dòng)連接是有用戶根據(jù)需求手動(dòng)按鈕撥號(hào)及斷開。目前自動(dòng)連接模式最為常用,然而如果自動(dòng)連接失效,設(shè)備在連接出現(xiàn)問題時(shí)不會(huì)自動(dòng)重?fù)埽斐捎脩魺o法正常訪問網(wǎng)絡(luò),因此對(duì)自動(dòng)連接模式的測(cè)試非常重要。
[0003]目前對(duì)于PPPoE自動(dòng)連接模式下自動(dòng)重?fù)芄δ艿臏y(cè)試以手動(dòng)測(cè)試為主,在輸入錯(cuò)誤的用戶名和密碼后開始抓包,查看是否有PADI (PPPoE發(fā)現(xiàn)初始)報(bào)文的請(qǐng)求包出去,在檢測(cè)到該請(qǐng)求包后開始計(jì)時(shí),查看在規(guī)定的時(shí)間內(nèi)是否再次請(qǐng)求。這樣的測(cè)試方法誤差比較大,在抓到包時(shí)每次人工計(jì)時(shí)有很大的不準(zhǔn)確性,會(huì)導(dǎo)致測(cè)試結(jié)果的誤差,所以測(cè)試的結(jié)果不準(zhǔn)確只能估量。
[0004]即是說,現(xiàn)有技術(shù)存在以下缺點(diǎn):因手動(dòng)測(cè)試誤差大,需反復(fù)測(cè)試驗(yàn)證功能,導(dǎo)致測(cè)試周期長(zhǎng);增加測(cè)試人力物力,且延長(zhǎng)了測(cè)試時(shí),增加了產(chǎn)品整個(gè)研發(fā)成本,因而增加了產(chǎn)品的成本;測(cè)試人員既要抓包查看,又要計(jì)時(shí),易出現(xiàn)誤差,誤測(cè)率高。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于提供一種PPPoE自動(dòng)連接模式下適用的自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng)及方法,能夠簡(jiǎn)化測(cè)試步驟,縮短測(cè)試周期,減少誤測(cè)率。
[0006]為了達(dá)到上述目的,本發(fā)明的第一個(gè)技術(shù)方案是提供一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試方法,其特征在于,包含以下過程:
配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式;
進(jìn)入待測(cè)設(shè)備的串口,對(duì)重?fù)苷?qǐng)求報(bào)文進(jìn)行檢測(cè);
輸出每次匹配到重?fù)苷?qǐng)求報(bào)文時(shí)的系統(tǒng)時(shí)間。
[0007]優(yōu)選地,配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式的過程,包含:
打開待測(cè)設(shè)備管理地址,填寫正確的用戶名密碼后登錄;
進(jìn)入WAN設(shè)置頁面,配置為PPPoE自動(dòng)連接模式,并填寫錯(cuò)誤的用戶名密碼。
[0008]優(yōu)選地,對(duì)匹配重?fù)苷?qǐng)求報(bào)文的計(jì)數(shù)項(xiàng)進(jìn)行設(shè)定;
在串口檢測(cè)時(shí),若匹配到有重?fù)苷?qǐng)求報(bào)文時(shí),則記錄相應(yīng)的系統(tǒng)時(shí)間,并檢查計(jì)數(shù)項(xiàng)是否達(dá)到設(shè)定數(shù)值;
如果計(jì)數(shù)項(xiàng)小于設(shè)定數(shù)值,則使計(jì)數(shù)項(xiàng)加一后重復(fù)循環(huán)檢測(cè)過程;
如果計(jì)數(shù)項(xiàng)大于等于設(shè)定數(shù)值,則跳出循環(huán)停止檢測(cè)。
[0009]本發(fā)明的第二個(gè)技術(shù)方案是提供一種自動(dòng)測(cè)試方法,其包含以下過程:
配置自動(dòng)測(cè)試腳本,來配置自動(dòng)化測(cè)試過程及待測(cè)設(shè)備的參數(shù);
對(duì)待測(cè)設(shè)備進(jìn)行監(jiān)控,輸出每次匹配到設(shè)定內(nèi)容時(shí)的系統(tǒng)時(shí)間;
進(jìn)行循環(huán)檢測(cè),直到循環(huán)次數(shù)達(dá)到設(shè)定數(shù)值時(shí)跳出循環(huán)結(jié)束測(cè)試。
[0010]一個(gè)優(yōu)選示例中,在自動(dòng)測(cè)試腳本中,將待測(cè)設(shè)備配置為PPPoE自動(dòng)連接模式;
所要匹配的設(shè)定內(nèi)容為待測(cè)設(shè)備的重?fù)苷?qǐng)求報(bào)文。
[0011]另一個(gè)優(yōu)選示例中,在自動(dòng)測(cè)試腳本中,將待測(cè)設(shè)備配置為PPPoE按需撥號(hào)模式; 所要匹配的設(shè)定內(nèi)容為待測(cè)設(shè)備按需撥號(hào)的輪詢字符;
循環(huán)檢測(cè)時(shí)輸出每次匹配到輪詢字符時(shí)的自動(dòng)斷線時(shí)間。
[0012]本發(fā)明的第三個(gè)技術(shù)方案是提供一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng),其包含: 配置器,用以配置自動(dòng)化測(cè)試腳本,配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式;
串口監(jiān)控器,監(jiān)控待測(cè)設(shè)備的串口,抓取待測(cè)設(shè)備每一次發(fā)送的重?fù)苷?qǐng)求報(bào)文并分別標(biāo)記;
計(jì)時(shí)器,對(duì)每一次抓取到重?fù)苷?qǐng)求報(bào)文時(shí)的系統(tǒng)時(shí)間進(jìn)行記錄;
計(jì)數(shù)器,每一次抓取到重?fù)苷?qǐng)求報(bào)文時(shí)對(duì)一個(gè)計(jì)數(shù)項(xiàng)做加一操作,并判斷該計(jì)數(shù)項(xiàng)是否達(dá)到設(shè)定數(shù)值;
輸出器,在計(jì)數(shù)項(xiàng)達(dá)到設(shè)定數(shù)值時(shí)結(jié)束測(cè)試,并輸出每一次標(biāo)記的重?fù)苷?qǐng)求報(bào)文及其系統(tǒng)時(shí)間。
[0013]優(yōu)選地,進(jìn)一步設(shè)置有比較器,將輸出的任意兩次重?fù)苷?qǐng)求報(bào)文的系統(tǒng)時(shí)間的時(shí)間差,與設(shè)定的標(biāo)準(zhǔn)時(shí)間差進(jìn)行比較,以判斷待測(cè)設(shè)備是否符合測(cè)試標(biāo)準(zhǔn)。
[0014]本發(fā)明公開了一種PPPoE自動(dòng)連接模式下自動(dòng)重?fù)芄δ艿淖詣?dòng)化測(cè)試系統(tǒng)及方法,適用于含有PPPoE功能的所有產(chǎn)品。本發(fā)明通過檢測(cè)重?fù)苷?qǐng)求報(bào)文,在檢測(cè)到重?fù)苷?qǐng)求報(bào)文時(shí)記錄系統(tǒng)時(shí)間點(diǎn),將重?fù)苷?qǐng)求報(bào)文和時(shí)間點(diǎn)返回到測(cè)試結(jié)論中。將上述過程通過編寫成自動(dòng)化腳本來實(shí)現(xiàn),使功能項(xiàng)的配置和功能的測(cè)試現(xiàn)一鍵自動(dòng)化。
[0015]與現(xiàn)有最好技術(shù)相比,本發(fā)明將原先所有的手動(dòng)工作改由自動(dòng)化測(cè)試完成,其優(yōu)點(diǎn)在于:
1)測(cè)試簡(jiǎn)單:測(cè)試人員只需查看測(cè)試結(jié)果即可,不需做繁瑣的動(dòng)作;
2)可靠性高:自動(dòng)化測(cè)試準(zhǔn)確,消除了人工測(cè)試中的誤差;
3)縮短測(cè)試時(shí)間:消除了測(cè)試誤差,不用反復(fù)驗(yàn)證,且在自動(dòng)化測(cè)試時(shí),測(cè)試人員可以做其他工作;
4)測(cè)試復(fù)雜度減小:測(cè)試人員在不熟悉功能的情況下也可進(jìn)行測(cè)試。
【專利附圖】
【附圖說明】
[0016]圖1是本發(fā)明所述自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試方法的流程圖;
圖2是本發(fā)明所示自動(dòng)重?fù)芄δ艿淖詣?dòng)化測(cè)試系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0017]本發(fā)明公開了一種PPPoE自動(dòng)連接模式下自動(dòng)重?fù)芄δ艿淖詣?dòng)化測(cè)試方法,將路由器配置過程編寫成自動(dòng)化測(cè)試腳本,自動(dòng)配置待測(cè)設(shè)備的PPPoE模式并配置自動(dòng)連接模式;配置完成腳本后開始監(jiān)控待測(cè)設(shè)備串口信息,匹配PPPoE重?fù)苷?qǐng)求報(bào)文,匹配成功后標(biāo)示為I并記錄系統(tǒng)時(shí)間;繼續(xù)第二次匹配,再次匹配成功后標(biāo)示為2并記錄系統(tǒng)時(shí)間,以此類推;將成功匹配報(bào)文的系統(tǒng)時(shí)間的具體記錄次數(shù)設(shè)為變量,可由測(cè)試人員根據(jù)測(cè)試需求進(jìn)行修改。記錄的時(shí)間會(huì)輸出至測(cè)試結(jié)論中,測(cè)試結(jié)束后由測(cè)試人員查看是否符合測(cè)試標(biāo)準(zhǔn)。
[0018]如圖1所示,為了更好地說明本發(fā)明的預(yù)期效果,下面舉例說明,根據(jù)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)說明:
步驟1,打開待測(cè)設(shè)備管理地址(本例中為〃http://192.168.1.1〃),填寫用戶名密碼(例如均為"admin")并登錄待測(cè)設(shè)備。
[0019]
WebDriverBackedSelenium selenium = new WebDriverBackedSelenium (newFirefoxDriver O , "http://192.168.1.1");selenium, type Cid=UserName", "admin");selenium, type (//id=password//, "admin");selenium.clickAndWait(〃name=login〃);
步驟2,進(jìn)入WAN設(shè)置頁面,配置為PPPoE模式,填寫錯(cuò)誤的用戶名密碼(例如為〃abc〃、〃 123〃),選擇自動(dòng)連接模式后保存。
[0020]...selenium, click(〃id=mb2〃);
selenium, click(〃id=sb21〃);
selenium.selectFrame(〃formframe〃);
selenium, click(〃name=connect1nType〃,〃PPPoE〃);
selenium, type (//name=pppoeUser//, "abc");
selenium, type (//name=pppoePass//, "123");
selenium, click(〃value=保存〃);
步驟3,通過命令監(jiān)控待測(cè)設(shè)備串口(例如是’ cornS'),開始監(jiān)控PPPoE重?fù)苷?qǐng)求報(bào)文,監(jiān)控的同時(shí)輸出匹配到每個(gè)報(bào)文時(shí)的系統(tǒng)時(shí)間;抓取次數(shù)可以通過修改計(jì)數(shù)項(xiàng)的設(shè)定數(shù)值(本例中設(shè)為100次)進(jìn)行調(diào)整。
[0021]即是說,若沒有匹配重?fù)苷?qǐng)求報(bào)文則繼續(xù)檢測(cè);若匹配到有重?fù)苷?qǐng)求報(bào)文,則記錄系統(tǒng)時(shí)間并檢查計(jì)數(shù)項(xiàng)是否到達(dá)設(shè)定數(shù)值;
如果計(jì)數(shù)項(xiàng)小于設(shè)定數(shù)值,則使計(jì)數(shù)項(xiàng)加一后重復(fù)上述檢測(cè)過程;
如果計(jì)數(shù)項(xiàng)大于等于設(shè)定數(shù)值,則跳出循環(huán)停止檢測(cè)。
[0022]...t=serial.Serial (’com5’,57600, timeout=l)
time, sleep (I)
t.write (〃\n〃)
time, sleep (I)
t.write(〃admin\n〃)
time, sleep (I)
t.write(〃admin\n〃)
count=0
time, sleep (30)
while (count〈100):
count=count+l
line = t.readline ()
print line
matchObj = re.search (rJ Using interface pppO’,line,re.M| re.1)
if matchObj:
localtime=time.asctime(time, localtime (time.time ()))
print localtime
t.close ()
步驟4,結(jié)束上述循環(huán)后,每次的抓包和抓包時(shí)間(即每次匹配到重?fù)苷?qǐng)求報(bào)文及記錄的重?fù)軙r(shí)間)會(huì)輸出至測(cè)試完成后形成的測(cè)試結(jié)論中。
[0023]Starting test: Test INFO:
PPPoE redial I
Wed Sep 17 19:00:04 2014
PPPoE redial 2
Wed Sep 17 19:00:34 2014
Ending test: Test.Test, test
如上述結(jié)果所示,本例中對(duì)報(bào)文第一次匹配成功時(shí)記錄的系統(tǒng)時(shí)間為19:00:04,第二次匹配成功時(shí)記錄的系統(tǒng)時(shí)間為19:00:34,兩次輸出的記錄時(shí)間間隔為30s,與標(biāo)準(zhǔn)相符。
[0024]如圖2所示,本發(fā)明提供一種自動(dòng)重?fù)芄δ艿淖詣?dòng)化測(cè)試系統(tǒng),包含:配置器10,用以配置自動(dòng)化測(cè)試腳本,配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式,并填寫錯(cuò)誤的PPPoE登錄信息;串口監(jiān)控器20,監(jiān)控待測(cè)設(shè)備的串口,抓取待測(cè)設(shè)備每一次發(fā)送的重?fù)苷?qǐng)求報(bào)文并分別標(biāo)記;計(jì)時(shí)器30,對(duì)每一次抓取到重?fù)苷?qǐng)求報(bào)文的系統(tǒng)時(shí)間進(jìn)行記錄;計(jì)數(shù)器40,每一次抓取到重?fù)苷?qǐng)求報(bào)文時(shí)對(duì)一個(gè)計(jì)數(shù)項(xiàng)做加一操作,并判斷該計(jì)數(shù)項(xiàng)是否達(dá)到設(shè)定數(shù)值;輸出器50,在計(jì)數(shù)項(xiàng)達(dá)到設(shè)定數(shù)值時(shí)結(jié)束測(cè)試,并輸出每一次標(biāo)記的重?fù)苷?qǐng)求報(bào)文及其系統(tǒng)時(shí)間,供測(cè)試人員查看。還可以進(jìn)一步設(shè)置比較器60,將輸出的兩次重?fù)苷?qǐng)求報(bào)文的系統(tǒng)時(shí)間的時(shí)間差,與設(shè)定的標(biāo)準(zhǔn)時(shí)間差進(jìn)行比較,來判斷是否符合測(cè)試標(biāo)準(zhǔn)。
[0025]綜上所述,本發(fā)明將PPPoE自動(dòng)連接模式下自動(dòng)重?fù)芄δ軠y(cè)試以自動(dòng)化的形式實(shí)現(xiàn);將繁瑣的抓包、計(jì)時(shí)通過自動(dòng)化匹配報(bào)文反饋時(shí)間來實(shí)現(xiàn),減小了測(cè)試誤差,保證了測(cè)試準(zhǔn)確性。
[0026]本發(fā)明并不局限于PPPoE自動(dòng)連接模式下自動(dòng)重?fù)芄δ軠y(cè)試,進(jìn)行相應(yīng)的變化可用于測(cè)試其它功能項(xiàng):如測(cè)試待測(cè)設(shè)置中的測(cè)試PPPoE的按需撥號(hào)的自動(dòng)斷線等待時(shí)間,將腳本中的匹配字符修改為按需撥號(hào)的輪詢字符,將循環(huán)次數(shù)修改為符合自動(dòng)化斷線的時(shí)間即可。本領(lǐng)域的技術(shù)人員在不背離本發(fā)明的原理和實(shí)質(zhì)的前提下,可以對(duì)這些實(shí)施方式做出多種變更或修改,但這些變更和修改均落入本發(fā)明的保護(hù)范圍。
[0027]盡管本發(fā)明的內(nèi)容已經(jīng)通過上述優(yōu)選實(shí)施例作了詳細(xì)介紹,但應(yīng)當(dāng)認(rèn)識(shí)到上述的描述不應(yīng)被認(rèn)為是對(duì)本發(fā)明的限制。在本領(lǐng)域技術(shù)人員閱讀了上述內(nèi)容后,對(duì)于本發(fā)明的多種修改和替代都將是顯而易見的。因此,本發(fā)明的保護(hù)范圍應(yīng)由所附的權(quán)利要求來限定。
【權(quán)利要求】
1.一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試方法,其特征在于,包含以下過程: 配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式; 進(jìn)入待測(cè)設(shè)備的串口,對(duì)重?fù)苷?qǐng)求報(bào)文進(jìn)行檢測(cè); 輸出每次匹配到重?fù)苷?qǐng)求報(bào)文時(shí)的系統(tǒng)時(shí)間。
2.如權(quán)利要求1所述的自動(dòng)測(cè)試方法,其特征在于, 配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式的過程,包含: 打開待測(cè)設(shè)備管理地址,填寫正確的用戶名密碼后登錄; 進(jìn)入WAN設(shè)置頁面,配置為PPPoE自動(dòng)連接模式,并填寫錯(cuò)誤的用戶名密碼。
3.如權(quán)利要求1所述的自動(dòng)測(cè)試方法,其特征在于, 對(duì)匹配重?fù)苷?qǐng)求報(bào)文的計(jì)數(shù)項(xiàng)進(jìn)行設(shè)定; 在串口檢測(cè)時(shí),若匹配到有重?fù)苷?qǐng)求報(bào)文時(shí),則記錄相應(yīng)的系統(tǒng)時(shí)間,并檢查計(jì)數(shù)項(xiàng)是否達(dá)到設(shè)定數(shù)值; 如果計(jì)數(shù)項(xiàng)小于設(shè)定數(shù)值,則使計(jì)數(shù)項(xiàng)加一后重復(fù)循環(huán)檢測(cè)過程; 如果計(jì)數(shù)項(xiàng)大于等于設(shè)定數(shù)值,則跳出循環(huán)停止檢測(cè)。
4.一種自動(dòng)測(cè)試方法,其特征在于,包含以下過程: 配置自動(dòng)測(cè)試腳本,來配置自動(dòng)化測(cè)試過程及待測(cè)設(shè)備的參數(shù); 對(duì)待測(cè)設(shè)備進(jìn)行監(jiān)控,輸出每次匹配到設(shè)定內(nèi)容時(shí)的系統(tǒng)時(shí)間; 進(jìn)行循環(huán)檢測(cè),直到循環(huán)次數(shù)達(dá)到設(shè)定數(shù)值時(shí)跳出循環(huán)結(jié)束測(cè)試。
5.如權(quán)利要求4所述的自動(dòng)測(cè)試方法,其特征在于, 在自動(dòng)測(cè)試腳本中,將待測(cè)設(shè)備配置為PPPoE自動(dòng)連接模式; 所要匹配的設(shè)定內(nèi)容為待測(cè)設(shè)備的重?fù)苷?qǐng)求報(bào)文。
6.如權(quán)利要求4所述的自動(dòng)測(cè)試方法,其特征在于, 在自動(dòng)測(cè)試腳本中,將待測(cè)設(shè)備配置為PPPoE按需撥號(hào)模式; 所要匹配的設(shè)定內(nèi)容為待測(cè)設(shè)備按需撥號(hào)的輪詢字符; 循環(huán)檢測(cè)時(shí)輸出每次匹配到輪詢字符時(shí)的自動(dòng)斷線時(shí)間。
7.一種自動(dòng)重?fù)芄δ艿淖詣?dòng)測(cè)試系統(tǒng),其特征在于,包含: 配置器,用以配置自動(dòng)化測(cè)試腳本,配置待測(cè)設(shè)備為PPPoE自動(dòng)連接模式; 串口監(jiān)控器,監(jiān)控待測(cè)設(shè)備的串口,抓取待測(cè)設(shè)備每一次發(fā)送的重?fù)苷?qǐng)求報(bào)文并分別標(biāo)記; 計(jì)時(shí)器,對(duì)每一次抓取到重?fù)苷?qǐng)求報(bào)文時(shí)的系統(tǒng)時(shí)間進(jìn)行記錄; 計(jì)數(shù)器,每一次抓取到重?fù)苷?qǐng)求報(bào)文時(shí)對(duì)一個(gè)計(jì)數(shù)項(xiàng)做加一操作,并判斷該計(jì)數(shù)項(xiàng)是否達(dá)到設(shè)定數(shù)值; 輸出器,在計(jì)數(shù)項(xiàng)達(dá)到設(shè)定數(shù)值時(shí)結(jié)束測(cè)試,并輸出每一次標(biāo)記的重?fù)苷?qǐng)求報(bào)文及其系統(tǒng)時(shí)間。
8.如權(quán)利要求7所述的自動(dòng)測(cè)試系統(tǒng),其特征在于, 進(jìn)一步設(shè)置有比較器,將輸出的任意兩次重?fù)苷?qǐng)求報(bào)文的系統(tǒng)時(shí)間的時(shí)間差,與設(shè)定的標(biāo)準(zhǔn)時(shí)間差進(jìn)行比較,以判斷待測(cè)設(shè)備是否符合測(cè)試標(biāo)準(zhǔn)。
【文檔編號(hào)】H04L12/26GK104320309SQ201410653444
【公開日】2015年1月28日 申請(qǐng)日期:2014年11月17日 優(yōu)先權(quán)日:2014年11月17日
【發(fā)明者】朱淵 申請(qǐng)人:上海斐訊數(shù)據(jù)通信技術(shù)有限公司