inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

ubuntu 응답없음

해결됨

Airflow 마스터 클래스

powershell에서 wsl --install을 입력한 후에 ubuntu 시작하는중... 이 출력되고 그 다음에 응답이 없는데 이런 경우 어떻게 해야할까요?

  • python
  • 데이터-엔지니어링
  • airflow
rosy 댓글 1 좋아요 0 조회수 420

네이버 메일 자동화 실습 문의

해결됨

[신규 개정판] 이것이 진짜 엑셀자동화다 - 기본편

안녕하세요 네이버 메일 자동화 코드를 실행하면 메일 쓰기 버튼을 계속 찾지 못하고 있어 어떻게 수정하면 될지 문의드립니다. 메일함 이동까지는 정상적으로 되고 있으나 메일 쓰기 버튼만 찾지 못하고 있습니다. 코드는 다음과 같습니다. from selenium.webdriver import ChromeOptions from selenium import webdriver from selenium.webdriver.chrome.service import Service as ChromeService from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.common.by import By import time import pyperclip import pyautogui from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC options = ChromeOptions() options.add_experimental_option("detach", True) driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()), options=options) driver.get('https://nid.naver.com/nidlogin.login?mode=form&url=https://www.naver.com/') driver.maximize_window() # 화면 최대화 # 아이디 입력창 id = driver.find_element(By.CSS_SELECTOR, '#id') id.click() pyperclip.copy('eooe5173') pyautogui.hotkey('ctrl', 'v') time.sleep(2) # 비밀번호 입력창 passward = driver.find_element(By.CSS_SELECTOR, '#pw') passward.click() pyperclip.copy('ssw471395~') pyautogui.hotkey('ctrl', 'v') time.sleep(2) # 로그인 버튼 driver.find_element(By.CSS_SELECTOR, '#log\.login').click() time.sleep(5) # 메일함으로 이동 mailbox = driver.find_element(By.CSS_SELECTOR,'#shortcutArea > ul > li:nth-child(1) > a').click() time.sleep(5) # 내게 쓰기 버튼 writeme_button =driver.find_element(By.CSS_SELECTOR, '#root > div > nav > div > div.lnb_header > div.lnb_task > a.item.button_write').click() # 메일 제목 입력창 및 입력 mailname = driver.find_element(By.CSS_SELECTOR, '#subject_title').click() pyperclip.copy('안녕하세요') pyautogui.hotkey('ctrl', 'v') time.sleep(5) # 메일 내용 입력창 및 입력 mailinfo = driver.find_element(By.CSS_SELECTOR, '#body > div > div.workseditor-content').click() pyperclip.copy('네이버 메일 자동화입니다.') pyautogui.hotkey('ctrl', 'v') time.sleep(5) # 메일 저장 mailsave = driver.find_element(By.CSS_SELECTOR, '#content > div.mail_toolbar.type_write > div:nth-child(1) > div > button.button_write_task').click() time.sleep(5) 에러는 동일하게 다음과 같이 노출되고 있습니다. selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"#root > div > nav > div > div.lnb_header > div.lnb_task > a.item.button_write"} (Session info: chrome=123.0.6312.123) Stacktrace: GetHandleVerifier [0x00D14CA3+225091] (No symbol) [0x00C44DF1] (No symbol) [0x00AE9A7A] (No symbol) [0x00B2175B] (No symbol) [0x00B2188B] (No symbol) [0x00B57882] (No symbol) [0x00B3F5A4] (No symbol) [0x00B55CB0] (No symbol) [0x00B3F2F6] (No symbol) [0x00B179B9] (No symbol) [0x00B1879D] sqlite3_dbdata_init [0x01189A43+4064547] sqlite3_dbdata_init [0x0119104A+4094762] sqlite3_dbdata_init [0x0118B948+4072488] sqlite3_dbdata_init [0x00E8C9A9+930953] (No symbol) [0x00C507C4] (No symbol) [0x00C4ACE8] (No symbol) [0x00C4AE11] (No symbol) [0x00C3CA80] BaseThreadInitThunk [0x764EFCC9+25] RtlGetAppContainerNamedObjectPath [0x77DE7C5E+286] RtlGetAppContainerNamedObjectPath [0x77DE7C2E+238]

  • python
  • selenium
  • openpyxl
댓글 1 좋아요 0 조회수 401

환경별 DB 분리 질문있습니다.

미해결

Practical Testing: 실용적인 테스트 가이드

안녕하세요. application.yml에서 local, test로 환경을 나누어서 h2 db를 통해 테스트 코드를 만들어보고있습니다. 나중에 운영 서버나 릴리즈 서버같은곳에 빌드, 배포할때도 테스트를 진행해야 할텐데 DB 주소를 어떻게 설정하는게 좋을까요? 각각 실제로 사용할 DB의 주소를 적어놓을텐데 빌드하면서 테스트를 진행하면 해당 DB의 테이블과 데이터를 건드리게 될거란 생각이 들어서요.. 테스트용 resources로 yml을 따로 작성해서 해야할까요?

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
fonercis 댓글 2 좋아요 0 조회수 324

제목과 영상이 다른것 같아요~

해결됨

Airflow 마스터 클래스

Task 실패시 email 발송하기 sla 로 task 수행현황 감시하고 email 발송하기 이 두개의 영상이 바뀐것 같아 보입니다 확인 해봐주세요~

  • python
  • 데이터-엔지니어링
  • airflow
qkswl6253 댓글 1 좋아요 0 조회수 263

\ <-이 작대기 작성 키는 무엇인가요??

미해결

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

\ <-이 작대기 작성 키는 무엇인가요??

  • python
재원정 댓글 2 좋아요 0 조회수 288

pdf 파일 12_SQLALCHEMY_ADVANCE 소스파일이 다릅니다

미해결

처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]

가장 첫번째 페이지 데이터 검색 (읽기) 에 나와있는 코드와 링크를 누르고 깃허브에 들어가서 나오는 코드가 다릅니다 . 수정부탁드립니다

  • python
  • mvc
  • sqlalchemy
  • FastAPI
  • backend
대성 댓글 2 좋아요 0 조회수 272

goupby.mean() 오류

미해결

파이썬 무료 강의 (활용편5) - 데이터 분석 및 시각화

그룹화 강의에서 df.groupby('학교').mean() 이 문을 실행했을때 TypeError가 나타나는데 강사님께서는 결과값이 잘 나옵니다. 어떤 차이인지 그리고 어떤 부분이 틀린건지 알고싶습니다. 자료형 문제인거 같은데 정확히 모르겠어서 문의드립니다. <데이터> <오류 내용>

  • python
  • pandas
  • groupby
조문영 댓글 1 좋아요 1 조회수 752

이 강의 주제를 듣다가.. 외부 시스템

미해결

Practical Testing: 실용적인 테스트 가이드

학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요! 먼저 유사한 질문이 있었는지 검색해 보세요. 서로 예의를 지키며 존중하는 문화를 만들어가요. 제가 테스트 코드를 수행 도중에 맞닥뜨린 고민이 있었습니다. 보통 메일과 같은 외부시스템(AWS)를 사용하게 되면, 그 해당 외부시스템의 key값과, secret값이 필요해서 application.yml 에 해당 key값과 secret값을 환경 변수로 설정해서, @Value 애노테이션을 통해서 설정 클래스를 만드는데, 이때 테스트 코드를 만들게 되면 application-test.yml과 같은 테스트 전용 yml 파일을 만들어서 테스트 환경을 실행시키도록 하게 되는데, 강사님은 이럴때 어떻게 처리하시는지 궁금합니다. application-test 파일에 설정을 안하게 되면 런타임시 에러가 발생하게 되어, 실행시 에러가 나는데. 외부 시스템은 Mocking 처리하도록 하니. 테스트용 임시로 임의값을 key, secret 값으로 설정하면 되는건지 궁금하네요 진짜 좋은 강의 감사합니다 ^^ ㅎㅎ

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
두잇베스트 댓글 2 좋아요 0 조회수 443

6-1 질문

해결됨

실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍

runserver을 하기 위해서 manage.py 를 사용하는데 만약에 mysite를 이용하기 위해서는 mysite에 있는 manage.py 를 이용해야하고 dealershop을 이용하기 위해서는 거기있는걸 이용해야하는건가요?? 처음에 mysite의 manage.py 를 이용해서 하다가 inventory로 안넘어가길래 무슨 문제가 있나 했어요ㅠㅠ

  • python
  • django
  • bootstrap
  • rest-api
  • drf
최진욱 댓글 1 좋아요 1 조회수 233

강의자료 다운로드 문의드립니다.

해결됨

[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]

구름 모양 버튼으로 강의자료를 받으려했는데, 실패가 계속 뜨더라구요 ! 보안 알림도 같이 뜨는데 확인 부탁드립니다 !

  • python
  • rest-api
  • flask
쿼발자 댓글 1 좋아요 1 조회수 298

안녕하십니까! 질문이 있습니다.

미해결

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

32 32 에서는 보다 작은 이미지들이 검출되고 4 * 4에는 보다 큰 이미지들이 검출된다고 말씀하셨는데. FC layer은 사이즈 마다 실행되는건가요? 예를들어 32 32에서는 사람이 검색되고 4 4에서는 자동차가 검출되었다고 했을 때 32 32에서도 FClayer가 수행이되고 4 4에서도 FClayer가 수행되서 결과로는 자동차 & 사람 모두가 검출되는 원리 인건가요?

  • python
  • 머신러닝
  • 딥러닝
  • keras
  • tensorflow
  • 컴퓨터-비전
Alex 댓글 1 좋아요 0 조회수 206

정답 오류

미해결

프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)

in_str = "../source/22-1.txt" with open(in_str, 'r') as file: txt = file.read() txt = txt.replace(","," ") txt_list = txt.split() print(txt_list) print(len(txt_list)) 영상속에서는 split()을 기본값으로 설정을 안하고 split(" ") 으로 해서 which\npermits 을 한단어로 인식해 정답이 72로 나오는데 기본값으로 하면 73으로 나옵니다 저거는 왜 인식이 안되서 72가 정답이되는거죠? 정규표현식으로 했을때도 저 단어만 인식을 못하고있습니다

  • python
건민 댓글 2 좋아요 0 조회수 288

Order.class 에대하여

미해결

Practical Testing: 실용적인 테스트 가이드

학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요! 먼저 유사한 질문이 있었는지 검색해 보세요. 서로 예의를 지키며 존중하는 문화를 만들어가요. 강의 듣다가 궁금한 점이 생겨서 질문을 작성합니다! Order 클래스는 @Entity 어노테이션이 붙어있는 도메인 객체인데 여기에 어떤 로직? 이라고 해야 하나요? List<OrderProduct> 를 바로 넣어주는 것이 아니고 List<Product>를 받아서 값을 뽑아서 new OrderProduct 로 생성하거나, calculateTotalPrice() 같은 메서드를 작성해도 괜찮은가요? (현업에서도 많이 쓰이는 방법인가요? 뭔가 따로 service로 빼도 괜찮지 않을까 라는 생각이 들었습니다. ) 전에 간단한 토이 프로젝트를 할 때 cascade = CascadeType.ALL 가 아닌 cascade = CascadeType.REMOVE 로 설정하고 Order을 생성한 후 OrderProduct를 수동으로 생성했었는데 CascadeType.ALL 이 더 범용적으로 많이 쓰는 방법인지 테스트 코드 작성법을 배우려고 듣게 되었는데 뭔가 라이브 코딩을 따라가면서 전반적으로? 많이 배우고 있어서 좋아요! ㅎㅎ 좋은 강의 감사합니다.

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
junjun 댓글 2 좋아요 0 조회수 344

테스트 질문 드립니다

미해결

Practical Testing: 실용적인 테스트 가이드

1 서비스에서 체크후 예외를 던지는것과 stock에서 체크후 예외를 던지는 것은 다르다라는것이 잘 이해갸 되지 않습니다 강의 내용을 보아도 잘 이해가 되지 않아 굳이 이렇게 나눠야하는지에 대해 다시한번 설명 부탁드립니다 ㅜㅜ 또한 저는 stock 객체 자체에 판단할 수있는게 좋지 않나? 즉 stock의 책임이지 않을까?란 생각을 통해 service에서 stock 객체가 할일을 가지고 가면 응집도 면에서 좋지 않다라는 생각을 가지고 있는데요 이에 대해 어떻게 생각하시나요? public boolean isQuantityLessThan(int quantity) { return this.quantity < quantity; } public void deductQuantity(int quantity) { if (isQuantityLessThan(quantity)) { throw new IllegalArgumentException("차감할 재고 수량이 없습니다."); } this.quantity -= quantity; } 2 테스트를 위한 코드 강의 내용 중 OrderCreateRequest와 관련되어 테스트를 위한 생성자가 생성되었다고 생각을 하는데요 테스트를 위한 코드에 대해 어떻게 생각하시는지 궁금합니다 저는 테스트를 위한 코드를 생성하면 안된다라고 생각하는데요 이유는 테스트를 위한 것으로 만들어 놨지만 다른곳에서 사용하게 되는 같은 현상이 발생될 수 있다라고 생각기때문입니다. OrderCreateRequest request = OrderCreateRequest.builder() .productNumbers(List.of("001", "002")) .build(); 3 어떤걸 어디서부터 어디까지 테스트해야되나?라는 의문입니다. OrderService를 구현하면서 Order와 관련된 테스트(Order.create()등등)를 진행하였고 또한 주문을 통해 생성된 OrderResponse에 대한 테스트를 진행하는 것을 보았습니다. 아래는 Order와 관련된 코드입니다 public Order(List<Product> products, LocalDateTime registeredDateTime) { this.orderStatus = OrderStatus.INIT; this.totalPrice = calculateTotalPrice(products); this.registeredDateTime = registeredDateTime; this.orderProducts = products.stream() .map(product -> new OrderProduct(this, product)) .collect(Collectors.toList()); } public static Order create(List<Product> products, LocalDateTime registeredDateTime) { return new Order(products, registeredDateTime); } private int calculateTotalPrice(List<Product> products) { return products.stream() .mapToInt(Product::getPrice) .sum(); } 이 코드에서 아래에 해당하는 코드만 테스트를 진행하셨는데요 this.orderStatus = OrderStatus.INIT; this.totalPrice = calculateTotalPrice(products); this.registeredDateTime = registeredDateTime; 만약에 위와 같은 컬럼이 끝이아니라 아래와 같이 수많은 컬럼이 있다면 이 모든것들을 다 테스트 해주어야 하는걸까요? 제 의문은 어떤것은 테스트하고 어떤것은 테스트 하지 말아야하나? 모든것들 전부 테스트 해야하나? 어디서부터 어디까지 테스트를 해야되지라는 정답이 없는 고민이 있어 강사님의 의견을 여쭙고자 질문을 드려봅니다 this.orderStatus = OrderStatus.INIT; this.totalPrice = calculateTotalPrice(products); this.registeredDateTime = registeredDateTime; ... ... ... ... ... ...은 컬럼을 의미합니다 아무거나 다른 컬럼을 생각해주셔도 좋습니다! 어떠한 한가지만을 테스트할때는 강사님이 말씀해주신것처럼 경계값이든 무엇이든 기준을 가지고 테스트를 진행하면 될텐데 OrderResponse나 그런것들 즉 어떤것에 의해 생성된것에 대해 테스트를 해야할때 어디서부터 어디까지 테스트를 해야하는지 잘모르겠습니다. 혹시 가능하시다면 어떤기준을 가지고 어떤것에 대해 테스트를 하시는지 어디서부터 어디까지 테스트를 해야하는지에 대한 생각을 가지고 있으시다면 말씀부탁드립니다 4 OrderService에 대한 테스트를 어디서부터 어디까지 어느정도 테스트해야하나입니다 지금은 아래와 같은 것들을 테스트 해주고 있는데요 assertThat(orderResponse.getId()).isNotNull(); assertThat(orderResponse) .extracting("registeredDateTime", "totalPrice") .contains(registeredDateTime, 4000); assertThat(orderResponse.getProducts()).hasSize(2) .extracting("productNumber", "price") .containsExactlyInAnyOrder( tuple("001", 1000), tuple("002", 3000) ); 만약 Order Service에 대한 로직이 복잡해지고 결제나 뭐 등등 이런것들이 증가가 된다면 그런부분들도 모두 test에서 검증을 해줘야하는걸까요? 만약 모두 그런부분들을 검증해준다고하면 구현부분이 조금 바뀐다고해도 테스트가 쉽게 깨질 수 있다라고 생각하는데요 그래서 생성이라면 생성과 관련된 테스트만 잘 테스트를 해야하는것인가 아니면 내부 구현에 대한 테스트도 진행을 해야하는것인가에 대한 의문이 있는데 강사님은 어떻게 생각하시나 궁금하여 질문을 드려봅니 5 앞에서 한 테스트를 뒤에서도 검증 해야하나? 라는 의문입니다 stock에 대한 단위테스트를 진행하면서 감소 메서드에 대한 테스트도 진행하였습니다. 그런데 OrderService에서 아래와 같은 코드로 검증을 해주는데요 List<Stock> stocks = stockRepository.findAll(); assertThat(stocks).hasSize(2) .extracting("productNumber", "quantity") .containsExactlyInAnyOrder( tuple("001", 0), tuple("002", 1) ); 항상 의문이었던 것은 다른 곳에서 테스트를 통해 검증이 끝난것도 다시 테스트를 해줘야하나라는 의문입니다. 이 코드 말고도 이와 비슷한 현상이 발생할 수 있을거 같은데요 다른 코드에서 검증을 진행해주는 코드를 앞 layer에서나 다른곳에서 쓸떄 또 검증을 해줘야하나라는 의문이 있습니다. 6 메일에관한 테스트는 하지않는걸까요? 서비스테스트 중에 외부에 관한 즉 메일링 관련된 것은 목킹한것을 보았습니다. 그러면 메일에 관한 것은 단위테스트를 통해서 하는 것인지 아니면 그냥 잘동작하는것이라고 가정하고해야 하는걸까요? (그것을 테스트할 수 없기 때문에?) 7 밸리드는 모두 테스트? 프레젠테이션 레이어 즉 컨트롤러 테스트 중 밸리드에 관련된 부분은 보통 모두 테스트 하시는편인가요 아니면 정말 필요하다고 생각되시는 부분만 하시는지 궁금합니다. 모두 하면 모두 검증을하는거니 당연히좋겠지만 이것도 모두 비용이라 생각하는데 이런것들도 모두해야되나?라는 의문이 들어 질문드립니다 적다보니 의문이 많이 생겨 주절주절 적어봤는데요.. 좋은 테스트 코드를 지향하면서 테스트를 통해 깔끔하게 문서화하고 이를 통해 신뢰도 있는 프로그램을 만들지에 대한 고민을 하면서 정답이 없는 고민들에 대해 생각이 들었고 이 강의로 이끌리게 되었습니다 혹시나 제 질문이 잘이해가 되지 않으신다면 말씀부탁드립니다!

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
answntjd1006 댓글 2 좋아요 1 조회수 418

PK값으로 테스트 할 때 질문입니다.

미해결

Practical Testing: 실용적인 테스트 가이드

학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요! 먼저 유사한 질문이 있었는지 검색해 보세요. 서로 예의를 지키며 존중하는 문화를 만들어가요. 우선, 덕분에 테스트 코드를 작성하는데 많은 도움이 됐습니다! 현재 토이프로젝트 진행 중에 PK 값을 Long 타입으로 두고 @GeneratedValue(strategy = GenerationType.IDENTITY) 이 전략을 사용하니, tearDown을 해도, 전체 테스트에서는 create하고 삭제를 하니, PK인 Long이 1L인 것을 보장을 못하더라구요. 그래서 create하는 메서드의 반환을 void로 했다가 Long 타입으로 반환하는데, 이렇게 하는 것도 좋은 코드인가요..? @DisplayName("사용자를 조회하면 사용자의 이름, 직업, 전화번호, 성별을 조회한다.") @Test void getUserInfo() { //given Register register = Register.builder() .name("name") .job(Jobs.STUDENT) .phone("010-0000-0000") .man(true) .build(); Long id = usersService.registerUser(register); //when UserResponse userInfo = usersService.getUserInfo(id); // then assertThat(userInfo.name()).isEqualTo("name"); assertThat(userInfo.job()).isEqualTo(Jobs.STUDENT); assertThat(userInfo.phone()).isEqualTo("010-0000-0000"); assertThat(userInfo.man()).isEqualTo(true); } // 단건 조회 public UserResponse getUserInfo (Long id){ Users user = usersRepository.findById(id). orElseThrow(IllegalArgumentException::new); return UserResponse.of(user); } 입니다!

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
감사합니두~ 댓글 2 좋아요 0 조회수 376

환경설정 내용은 없는건가요?

해결됨

핵 of 핵 파이썬 기초 문법

1강 파이썬 프로그래밍 환경 설치 및 설정하기로 되어 있고 이어서 해보겠다라고 하는데, 환경 설치 및 설정 내용이 없습니다. 의도하신 내용이신지요?

  • python
김정수 댓글 1 좋아요 0 조회수 268

사이킷런 업그레이드 수행 및 XGBoost와 LightGBM 설치 강의 (mac os용 영상이나 가이드)

미해결

[개정판] 파이썬 머신러닝 완벽 가이드

안녕하십니까 교수님. 사이킷런 업그레이드 수행 및 XGBoost와 LightGBM 설치 강의를 듣는 중 영상이 윈도우에 초점이 되어있는데 저는 mac os를 쓰고 있습니다. 1:19초부터 진도를 못따라가겠는데 mac 용 설치방법 영상이나 가이드는 따로 없을까요?

  • python
  • 머신러닝
  • 통계
spah853 댓글 2 좋아요 0 조회수 766

파이썬 for문 질문이요!

미해결

궁금한게 저기서 i와 j가 동일한 행을 뽑고 싶은데 해당하는 df전체 열을 뽑고 싶으면 코드를 어떻게 짜야할까요? 도와주세요..

  • for문
  • python
newtjsdud 댓글 3 좋아요 1 조회수 356

실무에서 연관관계 매핑에 대해 질문이 있습니다.

미해결

Practical Testing: 실용적인 테스트 가이드

학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요! 먼저 유사한 질문이 있었는지 검색해 보세요. 서로 예의를 지키며 존중하는 문화를 만들어가요. 실무에서는 연관관계 매핑이 하나의 애그리게이트에서는 사용하되 다른 에그리게이트와 매핑시에는 엔티티 매핑이 아닌 다른 에그리게이트의 id로 매핑한다고 하더라구요. 엔티티 매핑이 ManyToOne 관계에서 Many쪽에 one의 id로 매핑을 매핑하면 되는데, ManyToMany 관계에서의 다른 애그리게이트 관계와의 연관 관계 매핑이 아닌 id로는 어떻게 해결하시는 궁금합니다.

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
두잇베스트 댓글 2 좋아요 0 조회수 502

인기 태그

인프런 TOP Writers

주간 인기글