政大機構典藏-National Chengchi University Institutional Repository(NCCUR):Item 140.119/118272
English  |  正體中文  |  简体中文  |  Post-Print筆數 : 27 |  Items with full text/Total items : 113318/144297 (79%)
Visitors : 50950802      Online Users : 943
RC Version 6.0 © Powered By DSPACE, MIT. Enhanced by NTU Library IR team.
Scope Tips:
  • please add "double quotation mark" for query phrases to get precise results
  • please goto advance search for comprehansive author search
  • Adv. Search
    HomeLoginUploadHelpAboutAdminister Goto mobile version
    Please use this identifier to cite or link to this item: https://nccur.lib.nccu.edu.tw/handle/140.119/118272


    Title: 基於行為驅動開發製程的區塊鏈智能合約整合測試
    A Study of BDD-style Smart Contract Integration Test on the Blockchain
    Authors: 鄭敬儒
    Cheng, Ching-Ju
    Contributors: 廖峻鋒
    Liao, Chun-Feng
    鄭敬儒
    Cheng, Ching-Ju
    Keywords: 區塊鏈
    智能合約
    行為驅動開發
    Blockchain
    Smart contract
    BDD
    Date: 2018
    Issue Date: 2018-07-03 17:31:21 (UTC+8)
    Abstract: 近年來區塊鏈技術受到相當重視,相關應用也開始大量被開發。智能合約是運行於區塊鏈上,用於執行業務、交易的重要元件。近年來多學者不約而同地發現,如何驗證智能合約正確與完整反映繁瑣的業務規則,是區塊鏈應用程式開發的重要議題。然而,目前針對此議題仍欠缺系統化整合驗證與測試機制來確保所開發智慧合約的正確性。針對此一挑戰,本研究主要目的在於探究如何將行為驅動開發製程應用於區塊鏈智能合約的整合測試,利用行為驅動開發結合測試驅動開發製成實際開發一個支援BDD開發方法的Solidity智能合約語言自動整合測試平台,並且在本論文中以紅利點數交換為案例作為示範。此外,本研究亦以購物網站之購物車需求作為案例,就所開發系統進行使用者質性測試,針對易用性進行檢驗,研究結果顯示,本研究提出的機制能有效降低智能合約開發測試複雜度與負擔,提升合約品質。
    The importance of blockchain technologies and applications increases rapidly in recent years. A smart contract is a software component that encapsulates business and transaction logic of an application running on top of a blockchain network. Automatic integration testing and verification of smart contracts have become a vital software engineering issue of contract development. Nevertheless, there still lacks a systematic automated integration testing and verification mechanism. This thesis proposes a BDD-style automatic integration testing platform for Solidity–based smart contracts by considering the cross-cutting concerns of integration testing. Besides, this research has implemented a prototype system and a loyalty point exchanging scenario. The outcomes of this research are helpful for minimizing the cost and complexity of smart contract development and thus increase the quality of the blockchain applications.
    Reference: [1] N. Szabo, "Formalizing and securing relationships on public networks," First Monday, vol. 2, no. 9, 1997.
    [2] Nakamoto, Satoshi Bitcoin: A peer-to-peer electronic cash system. 2009.
    [3] K. Christidis and M. Devetsikiotis, "Blockchains and smart contracts for the internet of things," IEEE Access, vol. 4, pp. 2292–2303, 2016.
    [4] M. Swan, Blockchain: Blueprint for a new econ- omy. “O’Reilly Media, Inc.”, 2015.
    [5] D. Mamnani, “Testing of smart contracts in the blockchain world,” Blog post, 2017. [Online]. Available: https://www. capgemini.com/blog/capping-it-off/2017/01/ testing-of-smart-contracts-in-the-blockchain-world
    [6] L. Crispin and J. Gregory, Agile testing: A prac- tical guide for testers and agile teams. Pearson Education, 2009.
    [7] J. F. Smart, BDD in Action. Manning, 2014.
    [8] M. Gärtner, ATDD by example: a practical guide to acceptance test-driven development. Wesley, 2012.
    [9] M. Hüttermann, “Speci cation by example,” De- vOps for Developers, pp. 157–170, 2012.
    [10] W. Trumler and F. Paulisch, “How speci cation by example and test-driven development help to avoid technial debt,” in Managing Technical Debt (MTD), 2016 IEEE 8th International Workshop on. IEEE, 2016, pp. 1–8
    [11] C. Matts and G. Adzic, “Feature injec- tion: three steps to success,” 2011. [On- line]. Available: https://www.infoq.com/articles/ feature-injection-success
    [12] M. Wynne and A. Hellesoy, The cucumber book: behaviour-driven development for testers and de- velopers. Pragmatic Bookshelf, 2012.
    [13] R. Lawrence and P. Rayner, Behavior-Driven De- velopment with Cucumber. Pearson, 2016.
    [14] N. Li, A. Escalona, and T. Kamal, “Sky re: Model-based testing with cucumber,” in Software Testing, Veri cation and Validation (ICST), 2016 IEEE International Conference on. IEEE, 2016, pp. 393–400.
    [15] M. Rahman and J. Gao, “A reusable auto- mated acceptance testing architecture for mi- croservices in behavior-driven development,” in Service-Oriented System Engineering (SOSE), 2015 IEEE Symposium on. IEEE, 2015, pp. 321– 325.
    [16] S. Sivanandan et al., “Agile development cy- cle: Approach to design an e ective model based testing with behaviour driven automation frame- work,” in Advanced Computing and Communica- tions (ADCOM), 2014 20th Annual International Conference on. IEEE, 2014, pp. 22–25.
    [17] J. S. Dumas and J. Redish, A practical guide to usability testing. Ablex Pub. Corp., 1993.
    [18] J. Nielsen,” Why You Only Need to Test with 5 Users”, User Testing, in Nielsen Norman Group, 2000
    [19] S. Porru, A. Pinna, M. Marchesi, R. Tonelli, Blockchain-oriented software engineering: challenges and new directions. In Proceedings of the 39th International Conference on Software Engineering Companion, 2017, pp. 169-171
    [20] K. Benk, Test-driven development: by example. Addison-Wesley Professional, 2003
    [21] J. Nielsen, "10 usability heuristics for user interface design," Fremont: Nielsen Norman Group. [Consult. 20 maio 2014]. Disponível na Internet, 1995.
    Description: 碩士
    國立政治大學
    資訊科學系
    105753028
    Source URI: http://thesis.lib.nccu.edu.tw/record/#G0105753028
    Data Type: thesis
    DOI: 10.6814/THE.NCCU.CS.001.2018.B02
    Appears in Collections:[Department of Computer Science ] Theses

    Files in This Item:

    File SizeFormat
    302801.pdf2344KbAdobe PDF21033View/Open


    All items in 政大典藏 are protected by copyright, with all rights reserved.


    社群 sharing

    著作權政策宣告 Copyright Announcement
    1.本網站之數位內容為國立政治大學所收錄之機構典藏,無償提供學術研究與公眾教育等公益性使用,惟仍請適度,合理使用本網站之內容,以尊重著作權人之權益。商業上之利用,則請先取得著作權人之授權。
    The digital content of this website is part of National Chengchi University Institutional Repository. It provides free access to academic research and public education for non-commercial use. Please utilize it in a proper and reasonable manner and respect the rights of copyright owners. For commercial use, please obtain authorization from the copyright owner in advance.

    2.本網站之製作,已盡力防止侵害著作權人之權益,如仍發現本網站之數位內容有侵害著作權人權益情事者,請權利人通知本網站維護人員(nccur@nccu.edu.tw),維護人員將立即採取移除該數位著作等補救措施。
    NCCU Institutional Repository is made to protect the interests of copyright owners. If you believe that any material on the website infringes copyright, please contact our staff(nccur@nccu.edu.tw). We will remove the work from the repository and investigate your claim.
    DSpace Software Copyright © 2002-2004  MIT &  Hewlett-Packard  /   Enhanced by   NTU Library IR team Copyright ©   - Feedback