JCheck jEdit Spellcheck Plug-in Group Section 6 2 4 8.

Slides:



Advertisements
Similar presentations
Exercises : Testing Java with JUnit
Advertisements

Chapter 1 Writing a Program Fall Class Overview Course Information –On the web page and Blackboard –
Computer Science 209 Testing With JUnit. Why Test? I don ’ t have time, I ’ ve got a deadline to meet The more pressure I feel, the fewer tests I will.
J-Unit Framework.
Inheritance Math 130 B Smith: Consider using the example in SAMS Teach Yourself C++ in 24 hours B Smith: Consider using the example in SAMS Teach Yourself.
T ESTING WITH J UNIT IN E CLIPSE Farzana Rahman. I NTRODUCTION The class that you will want to test is created first so that Eclipse will be able to find.
START DEFINITIONS values (3) N1 = (8, 1,-9) i N1 average N3,2 sum N2 = 0 temp N1 Do not guess or assume any values! Follow the values of the variables.
Contributing to Rainbow’s Stitch Adaptation Language Ali Almossawi Bradley Schmerl Shang-Wen (Owen) Cheng Independent Study Summer 2006.
Chapter 15: Discovering problems ● There are some tools that we can use to discover problems – Junit: for unit testing – Ant as a make utility – CVS as.
Introduction to Eclipse, Unit Testing and JUnit David Rabinowitz.
COMS W1004 Introduction to Computer Science June 3, 2009.
JUnit Introduction and Advanced Features. Topics Covered  Junit Introduction  Fixtures  Test Suites  Currency Example.
ספטמבר 04Copyright Meir Kalech1 C programming Language Chapter 10: Appendices.
Presentation Outline What is JUnit? Why Use JUnit? JUnit Features Design of JUnit Downloading JUnit Writing Tests – TestCase – TestSuite Organizing The.
13-Jul-15 Refactoring II. Books Design Patterns is the classic book by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides Basically a catalog.
George Blank University Lecturer. JUnit for Test Driven Development By Vivek Bhagat, George Blank.
Programmer Testing Testing all things Java using JUnit and extensions.
Multiple Choice Solutions True/False a c b e d   T F.
Lecture 6 Software Testing and jUnit CS140 Dick Steflik.
Writing Classes (Chapter 4)
ProCol~ A jEdit Plugin for Remote Project Collaboration Justin Dieters Spring 2004 CS470 Final Presentation.
1 Advanced Computer Programming Project Management: Methodologies Copyright © Texas Education Agency, 2013.
A Computer Science Tapestry 1 Recursion (Tapestry 10.1, 10.3) l Recursion is an indispensable technique in a programming language ä Allows many complex.
Testing in Extreme Programming
The Program Development Cycle
Automated GUI testing How to test an interactive application automatically?
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
CSC 216/001 Lecture 4. Unit Testing  Why is it called “unit” testing?  When should tests be written?  Before the code for a class is written.  After.
Using Aspects to Support the Software Process: XP over Eclipse Oren Mishali and Shmuel Katz Technion, Israel Institute of Technology.
Question of the Day  On a game show you’re given the choice of three doors: Behind one door is a car; behind the others, goats. After you pick a door,
JUnit test and Project 3 simulation. 2 JUnit The testing problems The framework of JUnit A case study Acknowledgement: using some materials from JUNIT.
Functions Top-down design Breaking a complex problem into smaller parts that we can understand is a common practice. The process of subdividing a problem.
Introduction to JUnit 3.8 SEG 3203 Winter ‘07 Prepared By Samia Niamatullah.
Unit Testing with JUnit and Clover Based on material from: Daniel Amyot JUnit Web site.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
Procedural Programming Criteria: P2 Task: 1.2 Thomas Jazwinski.
JUnit Don Braffitt Updated: 10-Jun-2011.
JUnit A framework which provides hooks for easy testing of your Java code, as it's built Note: The examples from these slides can be found in ~kschmidt/public_html/CS265/Labs/Java/Junit.
JUnit SWE 619 Summer July 18, 2007 SWE 619 (c) Aynur Abdurazik 2 What is JUnit? Open source Java testing framework used to write and run repeatable.
S Ramakrishnan1 Systems V & V, Quality and Standards Dr Sita Ramakrishnan School CSSE Monash University.
1 CSC 216 Lecture 3. 2 Unit Testing  The most basic kind of testing is called unit testing  Why is it called “unit” testing?  When should tests be.
Test a Little, Code a Little Colin Sharples IBM Global Services New Zealand Colin Sharples IBM Global Services New Zealand.
Unit Testing. F-22 Raptor Fighter Manufactured by Lockheed Martin & Boeing How many parts does the F-22 have?
 Static  Example for Static Field  Example for Static Method  Math class methods  Casting  Scope of Declaration  Method Overloading  Constructor.
Designing Lego Labs Using Lejos and Mindstorms Adapted from Lynn Stein “Radically ReThinking CS1” NSF Workshop.
1 JUnit. 2 Unit Testing with JUnit If code has no automated test case written for it to prove that it works, it must be assumed not to work. An API that.
Copyright © Curt Hill Flow of Control A Quick Overview.
CS 241 Section Week #1. About Sections Each week: – We’ll spend additional time on topics that the instructors feel should be reviewed. – We’ll prepare.
This In Java, the keyword this allows an object to refer to itself. Or, in other words, this refers to the current object – the object whose method or.
Chapter 9: Continuing Classes By Matt Hirsch. Table Of Contents 1.Static Fields and Methods 2.Inheritance I. Recycle Code with Inheritance II. Overriding.
Editing and Debugging Mumps with VistA and the Eclipse IDE Joel L. Ivey, Ph.D. Dept. of Veteran Affairs OI&T, Veterans Health IT Infrastructure & Security.
MASS C++ Updates JENNIFER KOWALSKY, What is MASS? Multi-Agent Spatial Simulation A library for parallelizing simulations and data analysis Uses.
Getting Started with JUnit Getting Started with JUnit The benefits and ease of writing and running JUnit test cases and test suites. The benefits and ease.
Building Java Programs
Software Construction Lab 10 Unit Testing with JUnit
Documentation Guidelines
Development and Testing Ch4.1. Algorithm Analysis
CBCD: Cloned Buggy Code Detector
Computer Science 209 Testing With JUnit.
Bison: Parser Generator
Refactoring II 21-Sep-18.
Definitions Concurrent program – Program that executes multiple instructions at the same time. Process – An executing program (the running JVM for Java.
JAsCo an Aspect-Oriented approach tailored for
Refactoring II 5-Feb-19.
METHODS, CLASSES, AND OBJECTS A FIRST LOOK
2009 Test Key.
Solving Equations Containing Rational Expressions § 6.5 Solving Equations Containing Rational Expressions.
JUnit SWE 619 Spring 2008.
JUnit Dwight Deugo Nesa Matic Portions of the notes for this lecture include excerpts from the Eclipse 3.0 and.
Building Java Programs
Presentation transcript:

jCheck jEdit Spellcheck Plug-in Group Section

What is jEdit? Text editor for programmers Written entirely in Java Developed since 1998 Highly Customizable

What is jCheck? Plug-in for jEdit Java “Spellchecker” Finds undefined properties, keywords, and function names Suggests possible replacements

Why chose jEdit/jCheck? jEdit has sophisticated plug-in architecture Active community with many resources Most plug-in ideas already implemented jCheck chosen because it was not done yet and would be a useful feature Parts of existing plug-ins used to ease development

Solution Process Organization Management/ Organization Object Research/ Requirements Library/ Presentation ParserTesting DocumentationProcess Log WebsiteRepository

Solution Process SDP Model Used extreme programming Four sub-groups worked in pairs Parser group Library and Presentation group Testing, Research and Requirements Object group

Solution Process Group wiki powered by QwikiWiki - Josh Resources

Solution Process Group forums powered by PunBB - Mason Resources

Solution Process Shared code repository via Subversion – Mason Resources

Solution Design Design specification – Bhavya Management

Organization Solution Design Flowchart – Joel and Josh

Solution Design Object Model UML – Joel

Classes Solution Design jCheckPluginJCheckFrameParserLibraryKeyword Undefined KW Defined KW Location

Solution Design Story cards – Alen and Chris Management

Solution Implementation Time Management - Alexandra Management

Solution Implementation Parser Tokenizer Regular expressions LevenshteinOperationsSkippingReplacing Skip all Replace all

Solution Testing Overview Testing Hierarchy – Bhavya

Solution Testing Pre-Integration Test Flowchart – Bhavya

Solution Testing Pre-Integration Unit testing with jUnit – Ralph and Sopagna public class Math { static public int add(int a, int b) { return a + b; } static public int multiply(int a, int b) { return a * b; } import junit.framework.*; public class TestMath extends TestCase { protected void setUp() { // put common setup code in here } protected void tearDown() { // put common cleanup code in here } public void testAdd() { int num1 = 3; int num2 = 2; int total = 6; int sum = 0; sum = Math.add(num1, num2); assertEquals(sum, total); } public void testMulitply() { int num1 = 3; int num2 = 7; int total = 21; int sum = 0; sum = Math.multiply(num1, num2); assertEquals("Problem with multiply", sum, total); num1 = 5; num2 = 4; total = 20; sum = Math.multiply(num1, num2); assertEquals("Problem with multiply", sum, total); } Actual Class Test class

Solution Testing Post-Integration Issue Manager – Mason

Status Fixing bugs in issue tracker Finishing testing Preparing project for submission Gathering and organization logs and docs

Post-mortem What we would have done differently: Implement parser using open-source code Utilize features from other plug-ins Show tree using Sidekick plug-in Batch processing using ProjectWizard Cover areas not implemented due to time constraints Scope Real-time checking Underline errors

Questions