SlideShare a Scribd company logo
1 of 48
Download to read offline
TESTE DE INTEGRAÇÃO




              jIntegrity

           WASHINGTON BOTELHO



@wbotelhos | wbotelhos.com.br | #CafeComJava
Por que testar?
Por que testar?



Para garantir o funcionamento do código.
Quais o tipos comuns de teste?
Quais o tipos comuns de teste?




Unidade
Quais o tipos comuns de teste?




Unidade                    Manual
Quais o tipos comuns de teste?




Unidade                    Manual



            Aceitação
Quais o tipos comuns de teste?


            Integração

Unidade                    Manual



            Aceitação
Teste de integração é
  teste de “maxu”.
Eu disse Macho!!!
Acessa diretamente o
  banco de dados
Terei que alimentar o banco?
@Before
public void setup() {
  // SQL code...
}




                        @After
                        public void tearDown() {
                          // SQL code...
                        }
@Before
public void setup() {
  // SQL code...
}




@Test
public void shouldLoadByID() {
	 assertNotNull("should find", repository.loadByID(1l));
}




                                  @After
                                  public void tearDown() {
                                    // SQL code...
                                  }
Model x XML

              public class User {

                private Long id;
              	 private String email;
              	 private String name;

              }




<dataset>
	 <User id="1" email="email-1@mail.com" name="name-1" />
	 <User id="2" email="email-2@mail.com" name="name-2" />
	 <User id="3" email="email-3@mail.com" name="name-3" />
</dataset>
@Before
public void setup() {
	 execute(INSERT, "User.xml");
}




@Test
public void shouldLoadByID() {
	 assertNotNull("should find", repository.loadByID(1l));
}




                                 @After
                                 public void tearDown() {
                                   execute(DELETE, "User.xml");
                                 }
Dump     Insert




Delete   Update
Dump               Insert

         Restore




          XML

Delete             Update
Class.forName("com.mysql.jdbc.Driver").newInstance();

Connection conn = DriverManager
   .getConnection("jdbc:mysql://localhost/test", "root", "root");
Class.forName("com.mysql.jdbc.Driver").newInstance();

Connection conn = DriverManager
   .getConnection("jdbc:mysql://localhost/test", "root", "root");



IDatabaseConnection iConn = new DatabaseConnection(conn);
Class.forName("com.mysql.jdbc.Driver").newInstance();

Connection conn = DriverManager
   .getConnection("jdbc:mysql://localhost/test", "root", "root");



IDatabaseConnection iConn = new DatabaseConnection(conn);



InputStream stream = getClass().getResourceAsStream("/User.xml");

FlatXmlDataSetBuilder builder = new FlatXmlDataSetBuilder();

IDataSet dataSet = builder.build(stream);
Class.forName("com.mysql.jdbc.Driver").newInstance();

Connection conn = DriverManager
   .getConnection("jdbc:mysql://localhost/test", "root", "root");



IDatabaseConnection iConn = new DatabaseConnection(conn);



InputStream stream = getClass().getResourceAsStream("/User.xml");

FlatXmlDataSetBuilder builder = new FlatXmlDataSetBuilder();

IDataSet dataSet = builder.build(stream);



DatabaseOperation.INSERT.execute(iConn, dataSet);

iConn.close();
execute(INSERT, xml);



                           execute(DELETE_ALL, xml);



execute(REFRESH, xml);



                          execute(CLEAN_INSERT, xml);



execute(UPDATE, xml);



                         execute(TRUNCATE_TABLE, xml);


execute(DELETE, xml);
Show me the code!
Problemas

  Muito código?                             Organização?


dbUnitProvider.execute(DatabaseOperation.INSERT, "/User.xml");
dbUnitProvider.execute(DatabaseOperation.INSERT, "/Product.xml");
dbUnitProvider.execute(DatabaseOperation.INSERT, "/Payment.xml");




dbUnitProvider.execute(DatabaseOperation.DELETE, "/Payment.xml");
dbUnitProvider.execute(DatabaseOperation.DELETE, "/Product.xml");
dbUnitProvider.execute(DatabaseOperation.DELETE, "/User.xml");



   Flexibilidade?                             Reescrita?
jIntegrity
A toolbox to help you test!
Properties
jintegrity.properties

              path=
              xml=User,Product,Payment




     "/User.xml", "/Product.xml", "/Payment.xml"
Properties
jintegrity.properties

              path=
              xml=User,Product,Payment




     "/User.xml", "/Product.xml", "/Payment.xml"



hibernate.properties

         hibernate.connection.driver_class=
         hibernate.connection.url=
         hibernate.connection.username=
         hibernate.connection.password=
Configuração transparente!


   JIntegrity helper = new JIntegrity();
helper.insert();




helper.clean();
helper.insert();




  "/User.xml", "/Product.xml", "/Payment.xml"




helper.clean();
helper.insert();




  "/User.xml", "/Product.xml", "/Payment.xml"




helper.clean();




  "/Payment.xml", "/Product.xml", "/User.xml" // self.down?
helper.insert();




  "/User.xml", "/Product.xml", "/Payment.xml"




                               helper.cleanAndInsert();

helper.clean();




  "/Payment.xml", "/Product.xml", "/User.xml" // self.down?
Flexibilidade!

helper.path("my/package/dataset").insert();
Flexibilidade!

helper.path("my/package/dataset").insert();




helper.xml("User", "Payment").insert();
Flexibilidade!

   helper.path("my/package/dataset").insert();




   helper.xml("User", "Payment").insert();




helper
.insert()
  .insert("User")
    .path("package/dataset").xml("User").insert()
       .insert("/package/xml/User");
Vendors!

helper.vendor(JIntegrity.ORACLE10G);
Vendors!

helper.vendor(JIntegrity.ORACLE10G);




helper.useDB2();
helper.useHSQL();
helper.useMSSQL();
helper.useMySQL();
helper.useOracle10g();
Helpers!
Helpers!
private UserRepository repository;
Helpers!
private UserRepository repository;



@BeforeClass public static void beforeClass() {
   JPAHelper.entityManagerFactory("default");
}
Helpers!
private UserRepository repository;



@BeforeClass public static void beforeClass() {
   JPAHelper.entityManagerFactory("default");
}	



@Before public void setup() {
   EntityManager manager = JPAHelper.currentEntityManager();
   repository = new UserBusiness(manager);
}
Helpers!
private UserRepository repository;



@BeforeClass public static void beforeClass() {
   JPAHelper.entityManagerFactory("default");
}	



@Before public void setup() {
   EntityManager manager = JPAHelper.currentEntityManager();
   repository = new UserBusiness(manager);
}



@After public void tearDown() {
  JPAHelper.close();
}
Show me the code!
#greenbar
Referências


         DbUnit.org

      jIntegrity.com


github.com/wbotelhos/jintegrity
Dúvidas?
Obrigado! (:




      jIntegrity

   WASHINGTON BOTELHO



@wbotelhos | wbotelhos.com.br

More Related Content

What's hot

Java libraries you can't afford to miss
Java libraries you can't afford to missJava libraries you can't afford to miss
Java libraries you can't afford to missAndres Almiray
 
MVest Spring Job Execution
MVest Spring Job ExecutionMVest Spring Job Execution
MVest Spring Job ExecutionShraddha Bora
 
JDBC - JPA - Spring Data
JDBC - JPA - Spring DataJDBC - JPA - Spring Data
JDBC - JPA - Spring DataArturs Drozdovs
 
Stubる - Mockingjayを使ったHTTPクライアントのテスト -
Stubる - Mockingjayを使ったHTTPクライアントのテスト -Stubる - Mockingjayを使ったHTTPクライアントのテスト -
Stubる - Mockingjayを使ったHTTPクライアントのテスト -Kenji Tanaka
 
How to Design a Great API (using flask) [ploneconf2017]
How to Design a Great API (using flask) [ploneconf2017]How to Design a Great API (using flask) [ploneconf2017]
How to Design a Great API (using flask) [ploneconf2017]Devon Bernard
 
Building node.js applications with Database Jones
Building node.js applications with Database JonesBuilding node.js applications with Database Jones
Building node.js applications with Database JonesJohn David Duncan
 
History of jQuery
History of jQueryHistory of jQuery
History of jQueryjeresig
 
Lean React - Patterns for High Performance [ploneconf2017]
Lean React - Patterns for High Performance [ploneconf2017]Lean React - Patterns for High Performance [ploneconf2017]
Lean React - Patterns for High Performance [ploneconf2017]Devon Bernard
 
TDD in the wild
TDD in the wildTDD in the wild
TDD in the wildBrainhub
 
Annotation Processing in Android
Annotation Processing in AndroidAnnotation Processing in Android
Annotation Processing in Androidemanuelez
 
05 JavaScript #burningkeyboards
05 JavaScript #burningkeyboards05 JavaScript #burningkeyboards
05 JavaScript #burningkeyboardsDenis Ristic
 
Mastering Oracle ADF Bindings
Mastering Oracle ADF BindingsMastering Oracle ADF Bindings
Mastering Oracle ADF BindingsEuegene Fedorenko
 
06 jQuery #burningkeyboards
06 jQuery  #burningkeyboards06 jQuery  #burningkeyboards
06 jQuery #burningkeyboardsDenis Ristic
 
Selenium Webdriver with data driven framework
Selenium Webdriver with data driven frameworkSelenium Webdriver with data driven framework
Selenium Webdriver with data driven frameworkDavid Rajah Selvaraj
 
Conexcion java mysql
Conexcion java mysqlConexcion java mysql
Conexcion java mysqljbersosa
 
Advanced java practical semester 6_computer science
Advanced java practical semester 6_computer scienceAdvanced java practical semester 6_computer science
Advanced java practical semester 6_computer scienceNiraj Bharambe
 

What's hot (20)

Java libraries you can't afford to miss
Java libraries you can't afford to missJava libraries you can't afford to miss
Java libraries you can't afford to miss
 
MVest Spring Job Execution
MVest Spring Job ExecutionMVest Spring Job Execution
MVest Spring Job Execution
 
Excelsheet
ExcelsheetExcelsheet
Excelsheet
 
JDBC - JPA - Spring Data
JDBC - JPA - Spring DataJDBC - JPA - Spring Data
JDBC - JPA - Spring Data
 
Web2py
Web2pyWeb2py
Web2py
 
Stubる - Mockingjayを使ったHTTPクライアントのテスト -
Stubる - Mockingjayを使ったHTTPクライアントのテスト -Stubる - Mockingjayを使ったHTTPクライアントのテスト -
Stubる - Mockingjayを使ったHTTPクライアントのテスト -
 
How to Design a Great API (using flask) [ploneconf2017]
How to Design a Great API (using flask) [ploneconf2017]How to Design a Great API (using flask) [ploneconf2017]
How to Design a Great API (using flask) [ploneconf2017]
 
J query training
J query trainingJ query training
J query training
 
Building node.js applications with Database Jones
Building node.js applications with Database JonesBuilding node.js applications with Database Jones
Building node.js applications with Database Jones
 
History of jQuery
History of jQueryHistory of jQuery
History of jQuery
 
droidparts
droidpartsdroidparts
droidparts
 
Lean React - Patterns for High Performance [ploneconf2017]
Lean React - Patterns for High Performance [ploneconf2017]Lean React - Patterns for High Performance [ploneconf2017]
Lean React - Patterns for High Performance [ploneconf2017]
 
TDD in the wild
TDD in the wildTDD in the wild
TDD in the wild
 
Annotation Processing in Android
Annotation Processing in AndroidAnnotation Processing in Android
Annotation Processing in Android
 
05 JavaScript #burningkeyboards
05 JavaScript #burningkeyboards05 JavaScript #burningkeyboards
05 JavaScript #burningkeyboards
 
Mastering Oracle ADF Bindings
Mastering Oracle ADF BindingsMastering Oracle ADF Bindings
Mastering Oracle ADF Bindings
 
06 jQuery #burningkeyboards
06 jQuery  #burningkeyboards06 jQuery  #burningkeyboards
06 jQuery #burningkeyboards
 
Selenium Webdriver with data driven framework
Selenium Webdriver with data driven frameworkSelenium Webdriver with data driven framework
Selenium Webdriver with data driven framework
 
Conexcion java mysql
Conexcion java mysqlConexcion java mysql
Conexcion java mysql
 
Advanced java practical semester 6_computer science
Advanced java practical semester 6_computer scienceAdvanced java practical semester 6_computer science
Advanced java practical semester 6_computer science
 

Similar to Test Integration With jIntegrity

Struts database access
Struts database accessStruts database access
Struts database accessAbass Ndiaye
 
比XML更好用的Java Annotation
比XML更好用的Java Annotation比XML更好用的Java Annotation
比XML更好用的Java Annotationjavatwo2011
 
Javascript Frameworks for Joomla
Javascript Frameworks for JoomlaJavascript Frameworks for Joomla
Javascript Frameworks for JoomlaLuke Summerfield
 
Tomcat连接池配置方法V2.1
Tomcat连接池配置方法V2.1Tomcat连接池配置方法V2.1
Tomcat连接池配置方法V2.1Zianed Hou
 
Bring the fun back to java
Bring the fun back to javaBring the fun back to java
Bring the fun back to javaciklum_ods
 
33rd Degree 2013, Bad Tests, Good Tests
33rd Degree 2013, Bad Tests, Good Tests33rd Degree 2013, Bad Tests, Good Tests
33rd Degree 2013, Bad Tests, Good TestsTomek Kaczanowski
 
Singletons in PHP - Why they are bad and how you can eliminate them from your...
Singletons in PHP - Why they are bad and how you can eliminate them from your...Singletons in PHP - Why they are bad and how you can eliminate them from your...
Singletons in PHP - Why they are bad and how you can eliminate them from your...go_oh
 
2012 JDays Bad Tests Good Tests
2012 JDays Bad Tests Good Tests2012 JDays Bad Tests Good Tests
2012 JDays Bad Tests Good TestsTomek Kaczanowski
 
Symfony2 - from the trenches
Symfony2 - from the trenchesSymfony2 - from the trenches
Symfony2 - from the trenchesLukas Smith
 
#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"
#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"
#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"epamspb
 
Testing in android
Testing in androidTesting in android
Testing in androidjtrindade
 
Backbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCpootsbook
 
Spring dependency injection
Spring dependency injectionSpring dependency injection
Spring dependency injectionsrmelody
 

Similar to Test Integration With jIntegrity (20)

Struts database access
Struts database accessStruts database access
Struts database access
 
比XML更好用的Java Annotation
比XML更好用的Java Annotation比XML更好用的Java Annotation
比XML更好用的Java Annotation
 
Dropwizard
DropwizardDropwizard
Dropwizard
 
Javascript Frameworks for Joomla
Javascript Frameworks for JoomlaJavascript Frameworks for Joomla
Javascript Frameworks for Joomla
 
Tomcat连接池配置方法V2.1
Tomcat连接池配置方法V2.1Tomcat连接池配置方法V2.1
Tomcat连接池配置方法V2.1
 
Bring the fun back to java
Bring the fun back to javaBring the fun back to java
Bring the fun back to java
 
33rd Degree 2013, Bad Tests, Good Tests
33rd Degree 2013, Bad Tests, Good Tests33rd Degree 2013, Bad Tests, Good Tests
33rd Degree 2013, Bad Tests, Good Tests
 
Singletons in PHP - Why they are bad and how you can eliminate them from your...
Singletons in PHP - Why they are bad and how you can eliminate them from your...Singletons in PHP - Why they are bad and how you can eliminate them from your...
Singletons in PHP - Why they are bad and how you can eliminate them from your...
 
Having Fun with Play
Having Fun with PlayHaving Fun with Play
Having Fun with Play
 
2012 JDays Bad Tests Good Tests
2012 JDays Bad Tests Good Tests2012 JDays Bad Tests Good Tests
2012 JDays Bad Tests Good Tests
 
Codemotion appengine
Codemotion appengineCodemotion appengine
Codemotion appengine
 
Symfony2 - from the trenches
Symfony2 - from the trenchesSymfony2 - from the trenches
Symfony2 - from the trenches
 
#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"
#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"
#ITsubbotnik Spring 2017: Roman Iovlev "Java edge in test automation"
 
Testing in android
Testing in androidTesting in android
Testing in android
 
Backbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVCBackbone.js — Introduction to client-side JavaScript MVC
Backbone.js — Introduction to client-side JavaScript MVC
 
Introduction to Spring Boot
Introduction to Spring BootIntroduction to Spring Boot
Introduction to Spring Boot
 
JDBC Tutorial
JDBC TutorialJDBC Tutorial
JDBC Tutorial
 
Ejb3 Dan Hinojosa
Ejb3 Dan HinojosaEjb3 Dan Hinojosa
Ejb3 Dan Hinojosa
 
JDK Power Tools
JDK Power ToolsJDK Power Tools
JDK Power Tools
 
Spring dependency injection
Spring dependency injectionSpring dependency injection
Spring dependency injection
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

Test Integration With jIntegrity